Syndication Format Requirements In the long run, syndication messages must be able to distribute many different types of 'data', along with metadata related to: * simple syndication rules and/or processes, * the author/distributor of the syndication message (or parts thereof) * the data and/or metadata itself. Just about any type of data can be syndicated, but from my observations these types fall into two main categories: * a summary about a resource (human readable parts plus machine-readable metadata) that describes a resource and also references (via a URL) the 'full' resource * the full content of a resource (in some agreed-upon format) However, the full resource could be many different things -- an HTML page (or pages), iCalendar or vCard data, or many other different things. Moreover, a syndicated data message could contain multiple resources, which may or may not be related. For example, a message might contain a collection of unrelated resources, it might contain a set of different language-versions of the same resource. Other relationships would also be possible, and the mechanism for expressing this structure should allow for some degree of extendibility in this regard. HOwever, if the structure is rich, then maybe the message 'payload' should take on a format appropriate to this, independnet of the 'syndication' notation of the message. If we call each of these a 'resource', then each resource needs metatdata associated with it. This metadata provides information about the resource needed, by the recipient of the payload, to manage the syndication process. Resource metadata would be 'inherited' by the any resources within a given resource, while any metadata specified for an inner resource would override any inherited metadata value. Syndication Resource Metadata Metadata relevant to any resource can consists of (the [M] means taht the data should be in a well-known machine-readable format): This information describes how the resource can be retrieved or otherwise accessed/queried. Desired information would include: - [M] URL of the resource -- accessing this URL will re-retrieve it (or possibly an updated version of it) - [M] Unique ID for the resource (MUST be different for each variant of the resource, if it changes over time). Useful only if a resource can be retrieved using the UID value. - Resource Interface -- a generic interface (URL-based) for accessing the server that produces this resource. This requires specifying: - [M] base URL for the interface - [M] type of the interface (XML-RPC | SOAP) - [M] URL for retrieving a description for the interface This block contains metadata describing the resource and the organization/individual that authored the resource. - [M] human contact for resource (if any; email address or other) - [M] date resource was created - [M] date this message was assembled for delivery - [M] date resource was last modified - [M] main data type for 'content' - [M] authority data: who is the creator of this syndication resource. - [M] URL of organization - name of organization - [M?] authority digital signature - copyright statements - [M] content rating information (e.g. PICS or P3P) This block contains metadata describing the 'syndication rules' for the resource. This would include the time interval during which the resource should be used (it should not be used outside this range), the interval between regular updates to the resource (should it be updated on a regular basis), rules for how the resource can be passed on/redistributed by the recipient, and finally access control rules (how can the data be used).????? - [M] start time/date for display of data (start showing data after this date) - [M] stop time/date for display of data (stop displaying after this date) - [M] update interval (mean time between updates to the resource) - [M] no more updates - (resource is no longer being updated) - [M] redistribution / usage rules (how can this data be reused) - [M] access control (how can this data be used) This block contains metadata describing semantic properties of the resource (e.g., a description/summary of it, the language of the resource, etc.) - [M] human-readable language of the resource - [M] keywords appropriate to this resource - [M] categories this topic belongs in (in some hierarchical index) - [M] pointer to a catalog describing the keyword category lists used for the preceding. - free text description of the resource ... the data being communicated -------------- THe following is an example of this format -- _uri-to-resource_ _uuid_value_ human contact for resource .... creator url for organiation creator of data ..... ..... digital signature / signing .... ... ... a/b/c d/e/f _a brief-text-description-of-the-resource_ .. the actual data being sent .....