Presentation: "AtomServer - The Power of Publishing for Data Distribution"
Time: Friday 10:45 - 12:00
Location: Stanford
Atom Stores - generic data services based upon the Atom Publishing Protocol - are remarkably powerful. An Atom Store empowers clients to enrich and share their content without modifying the content itself, and as a result the whole becomes greater than the sum of its parts. Think of it as a mash-up for data.
AtomServer is an open source implementation of an Atom Store. AtomServer clearly separates the Atom entry content from the Atom metadata itself, providing an off-the-shelf, content neutral solution. The client is responsible only for supplying content storage adapters. And in general, AtomServer makes even this transparent to them, since mostly they are storing XML - either as Files or as CLOBs in a DB. So, for most purposes, creating an AtomServer is simply an exercise in configuration (Spring).
AtomServer implements the AtomPub spec using Apache Abdera, with extensions that are largely based on GData, although with several small usability tweaks based on client feedback. AtomServer is implemented as a Java web application, and should deploy into any J2EE Servlet Container
The current feature set includes, among others:
- Support for optimistic concurrency, with overrides for single-writer schemes
- Full support for consistent paging
- Full Category support, including support for complex boolean Category queries
- "Auto-tagging" support. Workspaces and/or Collections can be configured such that Categories are automatically created when Entries are created or updated. When the content is XML, this can be done using XPath
- Plug-gable Content validation support, with an emphasis on Relax NG (XSD support is planned)
- Plug-gable Content storage
- Aggregate support. Workspaces and/or Collections can be configured such that aggregates of other Entries are directly addressable
- Full support for Batch operations
- Optional Locale sensitivity for Entries
This presentation will explore Atom Stores and why you might want to use this emerging, exciting new data services architecture at your company. It will also dive deep into AtomServer, its features, and how to set up your own data service based on AtomServer.