Previous Page Arrow Next Page Arrow

3.13 SData Atom Extensions

The SData feeds and entries contain a few elements and attributes that extend the published standard Atom format. These elements and attributes are placed inside Atom feeds and entries, or they can replace the Atom payload. They support mechanisms such as relationship handling, concurrency handling and batching.

Together, these elements form the “SData Atom Extensions”, which are defined by the following namespaces:

http://schemas.sage.com/sdata/2008/1
http://schemas.sage.com/sdata/http/2008/1

SData namespace

The first set of extensions belong to the SData namespace (http://schemas.sage.com/sdata/2008/1).

Extension elements

SData Extension Elements
Element Inside Value Description Compliance
payload Atom entry XML Contains the resource payload. MUST
diagnosis Atom entry or diagnoses element XML Contains detailed error information. This element can be added to SData response entries. It carries details about the success or failure of the operation performed on the entry. Several diagnosis elements can be added to the same entry. For example, to describe a set of errors. MUST
diagnoses HTTP response XML Error payload. Requests that don't return any feed or entry. For example, delete operations. MUST
tracking HTTP response XML Tracking payload. Responses to asynchronous requests. MAY (MUST for asynchronous operations)
schema Atom feed or entry XSD Contains an inlined schema. MAY

Extension attributes

Attribute Applies to Value Description Compliance
key XML element inside payload string Primary key value of the resource. See Resource Linking and Embedding section. MUST
url XML element inside payload URL URL of the resource feed or entry. See Resource Linking and Embedding section. MUST
uuid XML element inside payload UUID UUID of the resource. See Resource Linking and Embedding section. MAY (MUST if sme:hasUuid is set)
lookup XML element inside payload URL URL to get a list of resource candidates for a relationship. See Resource Linking and Embedding section. MAY
descriptor XML element inside payload string Short human readable string for the resource. See Query Payload Control section. MAY
deleteMissing XML element for resource lists inside payload true false (default) Flag to indicate if a list update payload contains the full list (true) or only a delta (false). See Update Payloads section. MUST

SData HTTP namespace

The second set of extensions belong to the SData HTTP namespace (http://schemas.sage.com/sdata/http/2008/1). These extensions are used to attach HTTP header information to Atom entries. They are mainly used in query and batch operations.

SData Extension Elements
Element Inside Value Description Compliance
httpMethod Atom entry GET PUT POST DELETE Contains the HTTP method that should be applied to the entry. Used to associate an HTTP method to each entry in a batch request. MAY (MUST for batch)
httpStatus Atom entry integer Contains the HTTP status code (2xx, 3xx, 4xx, 5xx) for the entry. Used to associate an HTTP status to each entry in a batch response. MAY (MUST for batch)
httpMessage Atom entry string Contains the HTTP status message (OK, Created, Not found, etc.) for the entry. Used to associate an HTTP message to each entry in a  batch response. MAY (MUST for batch)
location Atom entry URL Contains the HTTP Location header value for the entry. Used to return the URL of a newly created resource in a  batch response. MAY (MUST for batch)
etag Atom entry string Contains the ETag value for the entry. Used to detect concurrent modifications. MAY (MUST for batch and sme:supportsETag)
ifMatch Atom entry entry Contains the If-Match value for the entry. Used to detect concurrent modifications in batch mode. MAY (MUST for batch and sme:supportsETag)

XSD reference

Appendix B and Appendix C cover XML Scheme Definition (XSD) specifications for these Atom extensions. These XSD schemas can be used to validate SData feeds and entries.


Previous Page Arrow Next Page Arrow