Service Document - Draft Specification 1.0 version 1

All Jangle implementations must return an Atom Services document from the base_url/services/ URL.

Example:
http://demo.jangle.org/services/

Methods allowed: GET, HEAD

Content-type required: application/atomsvc+xml

The schema and syntax of the service document is identical to how it is defined in RFC 5023.

Here is how Jangle uses the Atom Service elements:

Workspace
This corresponds to a Jangle connector service. The Workspace title can either be the service path name or a human readable description of the service.
Collection
An entity available within a connector. The title can either be a human readable description of the data or just the entity name.
Accept
This element is currently out of scope for this revision of Jangle.
categories
Jangle does not define the use of category documents (that is, their implementation is left to the developer). Categories are defined in the connector services response. A category must be consistent across collections within a workspace. If a term is used in more than one collection, it must have the identical schema and label as used in the other collections.

An example service document:

<?xml version="1.0" encoding="UTF-8"?>
<service xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom">
  <workspace>
    <atom:title>openbiblio</atom:title>
    <collection href="http://demo.jangle.org/openbiblio/items">
      <atom:title>Holdings records</atom:title>
    </collection>
    <collection href="http://demo.jangle.org/openbiblio/actors">
      <atom:title>Borrowers</atom:title>
    </collection>
    <collection href="http://demo.jangle.org/openbiblio/collections">
      <atom:title>Categories</atom:title>
    </collection>
    <collection href="http://demo.jangle.org/openbiblio/resources">
      <atom:title>Bibliographic records</atom:title>
      <categories fixed="no">
        <atom:category
          scheme="http://jangle.org/vocab/terms#dlf-ilsdi-resource"
          term="opac" />
      </categories>      
    </collection>
  </workspace>
  <workspace>
    <atom:title>prism</atom:title>
    <collection href="http://demo.jangle.org/prism/actors">
      <atom:title>Borrowers</atom:title>
    </collection>
    <collection href="http://demo.jangle.org/prism/collections">
      <atom:title>Categories</atom:title>
    </collection>
    <collection href="http://demo.jangle.org/prism/resources">
      <atom:title>Bibliographic records</atom:title>
    </collection>
  </workspace>  
</service>