Download presentation
Presentation is loading. Please wait.
1
1 21.10.2008 RESTful Publish Subscribe Xiang Su Xiang.su@ee.oulu.fi
2
2 21.10.2008 Web content syndication Explosion of self-publishing form like web blogs, online journals, Wikis, and other similar content Web content syndication has been an area of growing importance on the Internet. –Syndication technology provides an easily automated method of receiving information. –XML-RPC based protocols are widely used for editing web content –RSS uses XML-RPC.
3
3 21.10.2008 Why RESTful? XML-RPC based protocols suffer from these limitations: –Native HTTP authentication is not used; –Passwords sent in the clear; –Poor internationalization. (The XML-RPC protocol restricts element content to ASCII); –No built-in extensibility mechanisms; –No ability to specify the title or date of an entry being edited; every request is a POST to the same URI. REpresentational State Transfer (REST) provides a possibility to implement simple, scalable, but still powerful protocols for blogging and other applications
4
4 21.10.2008 REST Principles Resources are the key abstraction of application state and functionality, which identified by URIs Every resource is uniquely addressable using a universal syntax for use in hypermedia links. All interactions are context-free. Only use standard methods. Representation oriented
5
5 21.10.2008 RESTful Publish/Subscribe Design of a RESTful Publish/Subscribe protocol should comply with these principles. –Use resources with URIs to identify everything: documents, document collections, and feeds. –Only use basic HTTP methods and response codes in the protocol operation. –Operations are stateless. – The protocol operations such as creating a resource or editing a resource are representation oriented.
6
6 21.10.2008 Atom Publishing Protocol(AtomPub) AtomPub is the most popular protocol in the RESTful services ecosystems. It has a canonical HTTP-based approach for creating and editing Web resources. It is designed fundamentally around the idea of using the basic operations provided by the HTTP protocol, such as GET, PUT, and DELETE, to pass around instances of Atom Feed and Entry documents that represent things like blog entries, Wiki pages, calendar entries, and so on.
7
7 21.10.2008 Atom Publishing Protocol(AtomPub) The AtomPub supports the creation of arbitrary web resources and provides facilities for: –Collections: Sets of resources, which can be retrieved in whole or in part. –Introspection: Discovering and describing collections. –Editing: Creating, updating and deleting resources.
8
8 21.10.2008 Sample AtomPub publishing environment 1) By creating, editing, and deleting Atom entries, the client changes the state on a repository of entries. 2) Public-oriented resources, such as HTML pages and Atom feeds, are derived from the repository, and AtomPub interactions cause them to be updated
9
9 21.10.2008 AtomPub Requests and Behaviors ResourceMethodRepresentationDescription MemberGETAtom Entry Retrieve Service Document enumerating the URIs of a group of collections CollectionGETAtom FeedRetrieve a list of the members in the collection. May be a subset. CollectionPOSTAtom EntryCreate a new member resource with the given Atom Entry. MemberGETAtom EntryRetrieve the Atom representation of the entry. MemberPUTAtom EntryUpdate the member resource with the Atom entry representation. MemberDELETEAtom EntryDelete the member resource.
10
10 21.10.2008 Limitation of AtomPub Mismatch with data models that don’t follow microcontent. –The Atom data model fits very well for representing authored content or microcontent on the Web such as blog posts, lists of links, online photo albums and calendar events. –Atom entry has an an ID, a title, an updated date, one or more authors and textual content can be met and actually makes a lot of sense. –there are other kinds online data that don't really fit this model.
11
11 21.10.2008 Limitation of AtomPub Poor support for hierarchy –The Atom data model doesn't directly support nesting or hierarchies. –If you want to represent an item that has children they must be referenced via a link instead of included inline. –When there is a direct parent/child hierarchical relationship, where the child is an addressable resource in its own right, it is cumbersome for clients to always have to make two or more calls to get all the data they need.
12
12 21.10.2008 Web Structured, Schema’d & Searchable (Web3S) REST-style protocol. Designed by Miscosoft to overcome some limitation of AtomPub, including lack the ability to publish information beyond these types, lack support for granular update to data fields and provide poor support for hierarchies.
13
13 21.10.2008 Web Structured, Schema’d & Searchable (Web3S) Web3S utilizes XML Infoset based data representation specification But at February 2008, Microsoft announced to switch from the Web3S to AtomPub.
14
14 21.10.2008 Conclusion RESTful Publish/Subscribe, which employ lightweight RESTful architecture in web content syndication. Contribution: –Summarized the REST principles and studied how these principles are utilized in AtomPub. –Study the limitation of AtomPub, and give initial explanation why it can not be used as a general purpose editing protocol for the web. –Future study: Illustrate the capability of AtomPub. How to develop a general purpose editing protocol for the web?
15
15 21.10.2008 Questions and Comments?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.