Architectural Styles and the Design of Network-based Software Architectures (REST)
The dissertation by Roy Thomas Fielding that establishes the premise and the official constraints for the Representational State Transfer (REST) architectural style. It was published in 2000 with the University of California and the dissertation committee Professors Richard N. Taylor, Mark S. Ackerman and David S. Rosenblum.

Location: REST
Organization: ICS
The Atom XML-based document format was created as a sort of mix between Atom Syndication format – an XML language used for web feeds – and Atom Publish Protocol – an HTTP-based protocol that is used to create and update Web resources – to become an alternative to RDF Site Summary (RSS). The Atom format is used to describe related information found in lists or "feeds", where the feeds are composed of entries that each have an extensible set metadata attached. Mainly, Atom is used for Web content syndication for areas like blog or news headlines or even full websites. Supporters off Atom over RSS have formed the Internet Engineering Task Force (IETF) Atom Publishing Format and Protocol Workgroup.

Location: ATOM
Organization: IETF
Hypertext Transfer Protocol (HTTP)
The Hypertext Transfer Protocol (HTTP) is an application protocol that is the foundation of data communication for the Web. HTTP is considered a protocol for distributed, collaborative and hypermedia information systems. Though most people associated strictly with hyperlinking, it's generic, statelessness allows it to be used for many tasks. Through the extension of its request methods, error codes and headers, it has been known for use with name servers and distributed object management systems. By having typing and data representation negotiating features, HTTP allows systems to be built independently from the data that is transferred.

Location: HTTP
Organization: IETF
JavaScript (JS) is a prototype-based scripting language with first-class function that is dynamic and weakly typed. Primarily, it is often implemented as part of a Web browser to enhance user interfaces and websites with dynamic attributes. However, it is not only used for Web-based applications, such as desktop widgets and PDF documents. Though C influences syntax of JS and JS borrows many names and conventions from Java, it is basically unrelated and has very different semantics. In actuality its key design principles are more closely related to the Self and Scheme programming languages. JS was formalized in the ECMAScript language standard.

Location: Javascript
Organization: ECMA
JavaScript Object Notation (JSON)
The JavaScript Object Notation (JSON) is a lightweight text-based data-interchange format designed for human-readability. Though JSON is language independent and has parsers available for many languages, it was derived from JavaScript as a specialized means of representing simple data structures and associative arrays (objects). Often this format is used to serialize and transmit structured data over network connections, especially serving as an alternative to Extensible Markup Language (XML) by transmitting data between server and web applications.

Location: JSON
Organization: JSON
Multipurpose Internet Mail Extensions (MIME)
The Multipurpose Internet Mail Extensions (MIME) is an Internet standard email to support the following: non-text attachments, message bodies in multiple parts, text in character sets other and ASCII, and header information in non-ASCII character sets. As most email is transmitted via Simple Mail Transfer Protocol (SMTP) in MIME format, email of this variety is often called SMTP/MIME email. However, MIME standards are not just important to email because the content types they defined can also be useful in communication protocols, such as Hypertext Transfer Protocol (HTTP), because many of these require that data transferred via messages that structured similarly to email – the inclusions of headers for instance.

Location: MIME
Organization: IETF
MIME Media Type - Internet Media Type
An Internet media type, also referred to as MIME media types after Multipurpose Internet Mail Extensions (MIME) or Content-types, are two-part identifiers for file formats used on the Internet. The identifiers were originally defined for use in email sent through Simple Mail Transfer Protocol (SMTP), but now have been expanded for use with Hypertext Transfer Protocol (HTTP), Real-time Transport Protocol (RTP) and Session Initiation Protocol (SIP). MIME media types allow email clients to understand what "type" of file is attached to a message and then are able to handle it appropriately, but Web browsers and Internet search engines also support media types. MIME media types are composed of a type, subtype and other optional parameters.

Location: MIME
Organization: IANA
Restlet is a lightweight, comprehensive, open source Representational State Transfer (REST) framework for the Java platform that is used for both server and client Web applications. It supports major Internet transport, data format, and service description standards like Hypertext Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP), Extensible Markup Language (XML), JavaScript Object Notation (JSON), and Atom. A Google Web Toolkit (GWT) port of the client-side library is also available. This framework models concepts like Resource, Representation, Connector and Component from Roy T. Fielding's notable dissertation, "Architectural Styles and the Design of Network-based Software Architectures", which takes a specific look at Web architectures.

Location: Restlet
Organization: Restlet
Really Simple Syndication (RSS)
Really Simple Syndication (RSS) is extended from Extensible Markup Language (XML) and is a family of Web feed formats that are used to publish material that if updated frequently in a standardized format. The material can come from many different sources such as blogs, news headlines, audio files, and video files. An RSS document can include full or summarized content in addition to metadata like dates or authorship. RSS allows publishers to quickly and automatically syndicate content and publish it through a standardized XML file that can be viewed by many different programs. RSS feeds are accessed by software often referred to as RSS readers, feed readers or feed aggregators that can be based on the Web, desktop or a mobile device.

Location: RSS
Organization: Harvard Law
Transmission Control Protocol (TCP)
The Transmission Control Protocol (TCP) is used as a host-to-host protocol that provides the reliable and ordered delivery of data between programs on one computer to programs on another computer. More specifically TCP is a protocol between hosts in packet-switched computer communication networks, as well as in the interconnected systems within these networks. TCP is one of the main protocols that make up the Internet Protocol Suite, complementing the other Internet Protocol (IP). Often the entire suite is referred to as TCP/IP. The focus on TCP is reliability and it is used by many Internet applications such as email, remote administration and file transfer for this reason. If latency is more desirable than reliability, often times the User Datagram Protocol (UDP) is used instead.

Location: TCP
Organization: IETF
Uniform Resource Identifier (URI)
Uniform Resource Locator (URL)
Uniform Resource Name (URN)
The Uniform Resource Identifier (URI) is used to identify a name or a resource via a string of characters. Through the use of specific protocols, the identification provided by URIs enables interactions with the representation of resources over a network. Additionally, syntax and protocols are defined for each URI through schemas. URIs are used typically associated with the Web and can be classified as Uniform Resource Locators (URLs) or Uniform Resource Names (URNs).

The Uniform Resource Locator (URL) is a type of Uniform Resource Identifier (URI) that acts as a reference to an Internet resource; in essence a URL describes a resource's primary access mechanism (its network location). URLs use a specific type of syntax, where order and accuracy determine whether a resource will be found or not. URLs are part of a larger Internet information architecture, which consists of URLs, Uniform Resource Characteristics (URCs), and Uniform Resource Names (URNs). URCs are used to include meta-information and URNs are used for resource identification.

A Uniform Resource Name (URN) is a type of Uniform Resource Identifier (URI) and is part of a larger Internet information architecture, which consists of URNs, Uniform Resource Characteristics (URCs), and Uniform Resource Locators (URLs). URNs are meant to serve as location-independent, persistent resource identifiers and are created in such as way as to make it easier to map namespaces associated with URNs, whereas URCs are used to include meta-information and URLs are used to locate or find resources.

Location: URI, URL, URN
Organization: IETF
Web Application Description Language (WADL)
The Web Application Description Language (WADL) is an Extensible Markup Language (XML) based file format that acts a machine-readable type of Hypertext Transfer Protocol (HTTP) based Web applications. WADL is set up to allow services on IP networks to be articulated in a way that is easily processed by machines, making it easier to dynamically create applications and configure services. WADL applications are typically REST Web services, as such it aims to promote re-use and interoperability through remaining platform and language independent.

Location: WADL
Organization: W3C
XML for remote procedure call (XML-RPC) is a protocol intended for use over the Internet. XML-RPC is a remote procedure call (RPC) protocol that uses Extensible Markup Language (XML) to encode its calls and Hypertext Transfer Protocol (HTTP) is used as its transport mechanism. XML-RPC is often considered simpler to use and understand that Simple Object Access Protocol (SOAP) because it allows only one method of serialization, it has a simpler security model, and it doesn't require or support Web Services Description Language (WSDL) service descriptions. XML-RPC is considered quite similar to the remote procedure call protocol encoded in JavaScript Object Notation (JSON-RPC).

Location: XML-RPC
Organization: UserLand
SOA Design Patterns by Thomas Erl
Foreword by Grady Booch
With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy, Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.
Web Service Contract Design & Versioning for SOA by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley
SOA Principles of Service Design by Thomas Erl
Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services by Thomas Erl
Service-Oriented Infrastructure:On-Premise and in the Cloud by Raj Balasubramanian, Benjamin Carlyle, Thomas Erl, Cesare Pautasso
Next Generation SOA:A Real-World Guide to Modern Service-Oriented Computing by Pethuru Cheliah, Thomas Erl, Clive Gee, Robert Laird, Berthold Maier, Hajo Normann, Leo Shuster, Bernd Trops, Clemens Utschig, Torsten Winterberg
SOA with .NET & Windows Azure: Realizing Service-Orientation with the Microsoft Platform by David Chou, John deVadoss, Thomas Erl, Nitin Gandhi, Hanu Kommalapati, Brian Loesgen, Christoph Schittko, Herbjorn Wilhelmsen, Mickey Williams
SOA Governance:
Governing Shared Services On-Premise & in the Cloud
by Stephen Bennett, Thomas Erl, Clive Gee, Anne Thomas Manes, Robert Schneider, Leo Shuster, Andre Tost, Chris Venable
SOA with Java by Raj Balasubramanian, David Chou, Thomas Erl, Thomas Plunkett, Satadru Roy, Philip Thomas, Andre Tost
Modern SOA Methodology: Methods for Applying Service-Orientation On-Premise & in the Cloud by Raj Balasubramanian, David Chou, Thomas Erl, Thomas Plunkett, Satadru Roy, Philip Thomas, Andre Tost
Cloud Computing: Concepts, Technology & Architecture by Thomas Erl, Zaigham Mahmood, Ricardo Puttini
Cloud Computing Design Patterns by Thomas Erl, Amin Naserpour

For more information about these books, visit:

Arcitura Education Inc.
Arcitura Education Inc. is a leading global provider of progressive, vendor-neutral training and certification programs, providing industry-recognized certification programs for a range of certifications.
For more information:
SOA Certified Professional (SOACP)
The books in this series are part of the official curriculum for the SOA Certified Professional program.
For more information:
Cloud Certified Professional (CCP)
The books in this series are part of the official curriculum for the Cloud Certified Professional program.
For more information:
Big Data Science Certified Professional (BDSCP)
The books in this series are part of the official curriculum for the Big Data Science Certified Professional program.
For more information: