Network Working Group F. Thompson Internet-Draft Afilias Canada Intended status: Informational October 19, 2007 Expires: April 21, 2008 Extensible Supply-chain Discovery Service Schema draft-thompson-esds-schema-02 Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on April 21, 2008. Copyright Notice Copyright (C) The IETF Trust (2007). Thompson Expires April 21, 2008 [Page 1] Internet-Draft ESDS Schema October 2007 Abstract The Extensible Supply-chain Discovery Service (ESDS) is an application layer protocol for the distributed sharing and discovery of notification events between associated partners within a supply chain. This document outlines the schema of the ESDS application layer protocol. This is the formal syntax of the web service interface specification in Web Service Description Language (WSDL) and XML Schema (XSD). Comments are solicited and should be addressed to the mailing list at esds@ietf.org and/or the author(s). Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Web Service Interface . . . . . . . . . . . . . . . . . . . . 6 2.1. Common Types . . . . . . . . . . . . . . . . . . . . . . 6 2.1.1. tAbstractEvent . . . . . . . . . . . . . . . . . . . 6 2.1.2. tAbstractIn . . . . . . . . . . . . . . . . . . . . . 6 2.1.3. tAbstractOut . . . . . . . . . . . . . . . . . . . . 7 2.1.4. tAccessMode . . . . . . . . . . . . . . . . . . . . . 7 2.1.5. tEventClass . . . . . . . . . . . . . . . . . . . . . 8 2.1.6. tEventClassItem . . . . . . . . . . . . . . . . . . . 8 2.1.7. tEventClassItemList . . . . . . . . . . . . . . . . . 8 2.1.8. tEventDenyItem . . . . . . . . . . . . . . . . . . . 9 2.1.9. tEventDenyItemList . . . . . . . . . . . . . . . . . 10 2.1.10. tEventID . . . . . . . . . . . . . . . . . . . . . . 11 2.1.11. tEventItem . . . . . . . . . . . . . . . . . . . . . 11 2.1.12. tEventItemList . . . . . . . . . . . . . . . . . . . 13 2.1.13. tEventLifeCycleStepAllowItem . . . . . . . . . . . . 14 2.1.14. tEventLifeCycleStepAllowItemList . . . . . . . . . . 14 2.1.15. tEventPriority . . . . . . . . . . . . . . . . . . . 15 2.1.16. tEventTopicID . . . . . . . . . . . . . . . . . . . . 15 2.1.17. tEventTopicItem . . . . . . . . . . . . . . . . . . . 15 2.1.18. tEventTopicItemList . . . . . . . . . . . . . . . . . 16 2.1.19. tEventTTL . . . . . . . . . . . . . . . . . . . . . . 17 2.1.20. tEventType . . . . . . . . . . . . . . . . . . . . . 17 2.1.21. tEventTypeChoice . . . . . . . . . . . . . . . . . . 17 2.1.22. tExtension . . . . . . . . . . . . . . . . . . . . . 18 2.1.23. tExtensionID . . . . . . . . . . . . . . . . . . . . 18 2.1.24. tExtensionItem . . . . . . . . . . . . . . . . . . . 18 2.1.25. tExtensionItemList . . . . . . . . . . . . . . . . . 18 2.1.26. tGrantItem . . . . . . . . . . . . . . . . . . . . . 19 2.1.27. tGrantItemList . . . . . . . . . . . . . . . . . . . 20 2.1.28. tInfoEvent . . . . . . . . . . . . . . . . . . . . . 20 2.1.29. tLargeUID . . . . . . . . . . . . . . . . . . . . . . 23 Thompson Expires April 21, 2008 [Page 2] Internet-Draft ESDS Schema October 2007 2.1.30. tLeaseSeconds . . . . . . . . . . . . . . . . . . . . 23 2.1.31. tLifeCycleStepID . . . . . . . . . . . . . . . . . . 23 2.1.32. tLifeCycleStepItem . . . . . . . . . . . . . . . . . 23 2.1.33. tLifeCycleStepItemList . . . . . . . . . . . . . . . 24 2.1.34. tListAction . . . . . . . . . . . . . . . . . . . . . 24 2.1.35. tLoginMode . . . . . . . . . . . . . . . . . . . . . 25 2.1.36. tMessageDigest . . . . . . . . . . . . . . . . . . . 25 2.1.37. tMessageDigestAlgorithm . . . . . . . . . . . . . . . 25 2.1.38. tMessageDigestHexString . . . . . . . . . . . . . . . 26 2.1.39. tMethod . . . . . . . . . . . . . . . . . . . . . . . 26 2.1.40. tObject . . . . . . . . . . . . . . . . . . . . . . . 27 2.1.41. tObjectEvent . . . . . . . . . . . . . . . . . . . . 27 2.1.42. tObjectID . . . . . . . . . . . . . . . . . . . . . . 29 2.1.43. tObjectIDPattern . . . . . . . . . . . . . . . . . . 29 2.1.44. tObjectItem . . . . . . . . . . . . . . . . . . . . . 29 2.1.45. tObjectItemList . . . . . . . . . . . . . . . . . . . 30 2.1.46. tPartnerID . . . . . . . . . . . . . . . . . . . . . 30 2.1.47. tPartnerItem . . . . . . . . . . . . . . . . . . . . 30 2.1.48. tPartnerItemList . . . . . . . . . . . . . . . . . . 31 2.1.49. tPassword . . . . . . . . . . . . . . . . . . . . . . 32 2.1.50. tPermission . . . . . . . . . . . . . . . . . . . . . 32 2.1.51. tReasonID . . . . . . . . . . . . . . . . . . . . . . 32 2.1.52. tResult . . . . . . . . . . . . . . . . . . . . . . . 33 2.1.53. tResultCode . . . . . . . . . . . . . . . . . . . . . 33 2.1.54. tRoleID . . . . . . . . . . . . . . . . . . . . . . . 35 2.1.55. tRoleItem . . . . . . . . . . . . . . . . . . . . . . 35 2.1.56. tRoleItemList . . . . . . . . . . . . . . . . . . . . 35 2.1.57. tServiceID . . . . . . . . . . . . . . . . . . . . . 36 2.1.58. tServiceIDList . . . . . . . . . . . . . . . . . . . 36 2.1.59. tServiceItem . . . . . . . . . . . . . . . . . . . . 37 2.1.60. tServiceItemList . . . . . . . . . . . . . . . . . . 37 2.1.61. tServiceType . . . . . . . . . . . . . . . . . . . . 38 2.1.62. tServiceURI . . . . . . . . . . . . . . . . . . . . . 38 2.1.63. tSessionID . . . . . . . . . . . . . . . . . . . . . 38 2.1.64. tSmallUID . . . . . . . . . . . . . . . . . . . . . . 39 2.1.65. tStatus . . . . . . . . . . . . . . . . . . . . . . . 39 2.1.66. tSupplyChainID . . . . . . . . . . . . . . . . . . . 39 2.1.67. tSupplyChainItem . . . . . . . . . . . . . . . . . . 39 2.1.68. tSupplyChainItemList . . . . . . . . . . . . . . . . 40 2.1.69. tTableID . . . . . . . . . . . . . . . . . . . . . . 41 2.1.70. tTableRowItem . . . . . . . . . . . . . . . . . . . . 41 2.1.71. tTableRowItemList . . . . . . . . . . . . . . . . . . 41 2.1.72. tUserID . . . . . . . . . . . . . . . . . . . . . . . 42 2.1.73. tUserItem . . . . . . . . . . . . . . . . . . . . . . 42 2.1.74. tUserItemList . . . . . . . . . . . . . . . . . . . . 43 2.1.75. tVoidEvent . . . . . . . . . . . . . . . . . . . . . 43 2.1.76. tX509CertItem . . . . . . . . . . . . . . . . . . . . 44 2.1.77. tX509CertItemList . . . . . . . . . . . . . . . . . . 45 Thompson Expires April 21, 2008 [Page 3] Internet-Draft ESDS Schema October 2007 2.1.78. tX509String . . . . . . . . . . . . . . . . . . . . . 45 3. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1. ESDS WSDL . . . . . . . . . . . . . . . . . . . . . . . . 47 3.2. ESDS Schema . . . . . . . . . . . . . . . . . . . . . . . 65 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 108 5. Security Considerations . . . . . . . . . . . . . . . . . . . 109 6. Informative References . . . . . . . . . . . . . . . . . . . 110 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 111 Intellectual Property and Copyright Statements . . . . . . . . . 112 Thompson Expires April 21, 2008 [Page 4] Internet-Draft ESDS Schema October 2007 1. Introduction This document outlines the schema for the Extensible Supply-chain Discovery Service (ESDS). The schema is specified using Web Service Description Language (WSDL) and XML Schema (XSD). Extensible Supply- chain Discovery Service Concepts [draft-young-esds-concepts] introduces the ESDS and provides conceptual information about the protocol. For details and examples of the operation interface of the ESDS protocol, see Extensible Supply-chain Discovery Service Commands [draft-thompson-esds-commands]. Comments are solicited and should be addressed to the working group's mailing list at esds-protocol@afilias.info and/or the author(s). Thompson Expires April 21, 2008 [Page 5] Internet-Draft ESDS Schema October 2007 2. Web Service Interface The ESDS protocol is defined as a Web Service [WSI] defined by both WSDL [WSDL] (Web Service Description Language) and XSD (XML Schema) [XSD] files. 2.1. Common Types 2.1.1. tAbstractEvent o Description: Base event class with shared elements for all events. o Elements: * + Desc: user defined extension xml + Type: tExtension + Use: optional, but no more than 1 occurrence(s) * + Desc: priority + Type: tEventPriority + Use: optional, but no more than 1 occurrence(s) * + Desc: time to live + Type: tEventTTL + Use: optional, but no more than 1 occurrence(s) 2.1.2. tAbstractIn o Description: Base request type with common elements for every request operation. Thompson Expires April 21, 2008 [Page 6] Internet-Draft ESDS Schema October 2007 o Elements: * + Desc: session identifier + Type: tSessionID + Use: required * + Desc: user defined extension xml + Type: tExtension + Use: optional, but no more than 1 occurrence(s) 2.1.3. tAbstractOut o Description: Base response type with common elements for every response operation. o Elements: * + Desc: result structure common for each response + Type: tResult + Use: required * + Desc: user defined extension xml + Type: tExtension + Use: optional, but no more than 1 occurrence(s) 2.1.4. tAccessMode o Description: mode or type of access Thompson Expires April 21, 2008 [Page 7] Internet-Draft ESDS Schema October 2007 o Type: xs:token o Enumerated Values: * read: read access * write: write access 2.1.5. tEventClass o Description: event class defined per supply chain o Type: xs:token o Len: (2 - 64) characters 2.1.6. tEventClassItem o Description: event class item o Attributes: * "id" + Desc: event class identifier + Type: tEventClass + Use: required 2.1.7. tEventClassItemList o Description: list of event class items o Attributes: * "action" + Desc: event class list action + Type: tListAction Thompson Expires April 21, 2008 [Page 8] Internet-Draft ESDS Schema October 2007 + Use: optional o Elements: * + Desc: event class + Type: tEventClassItem + Use: zero or more occurrences 2.1.8. tEventDenyItem o Description: event deny item o Attributes: * "status" + Desc: item status + Type: tStatus + Use: required * "supplyChainID" + Desc: supply chain identifier + Type: tSupplyChainID + Use: required * "partnerID" + Desc: partner identifier + Type: tPartnerID + Use: required * "userID" + Desc: user identifier Thompson Expires April 21, 2008 [Page 9] Internet-Draft ESDS Schema October 2007 + Type: tUserID + Use: optional * "objectIDPattern" + Desc: object identifier pattern to match + Type: tObjectIDPattern + Use: optional * "startingAt" + Desc: starting at timestamp + Type: xs:dateTime + Use: optional * "endingAt" + Desc: ending at timestamp + Type: xs:dateTime + Use: optional 2.1.9. tEventDenyItemList o Description: event deny item list o Attributes: * "action" + Desc: event deny list action + Type: tListAction + Use: optional o Elements: * Thompson Expires April 21, 2008 [Page 10] Internet-Draft ESDS Schema October 2007 + Desc: deny (do not allow) + Type: tEventDenyItem + Use: zero or more occurrences 2.1.10. tEventID o Description: Event identifier. o Type: xs:positiveInteger 2.1.11. tEventItem o Description: An entry in a list of event items. o Attributes: * "e" + Desc: event identifier + Type: tEventID + Use: required * "o" + Desc: object identifier + Type: tObjectID + Use: required * "t" + Desc: event type + Type: tEventType + Use: required Thompson Expires April 21, 2008 [Page 11] Internet-Draft ESDS Schema October 2007 * "c" + Desc: event class + Type: tEventClass + Use: required * "lcs" + Desc: event life cycle step + Type: tLifeCycleStepID + Use: required * "ets" + Desc: event UTC timestamp + Type: xs:dateTime + Use: required * "sts" + Desc: client source system UTC timestamp + Type: xs:dateTime + Use: required * "u" + Desc: user identifier + Type: tUserID + Use: required * "p" + Desc: partner identifier + Type: tPartnerID + Use: required Thompson Expires April 21, 2008 [Page 12] Internet-Draft ESDS Schema October 2007 * "sc" + Desc: supply chain identifier + Type: tSupplyChainID + Use: required o Elements: * + Desc: list of services + Type: tServiceItemList + Use: required 2.1.12. tEventItemList o Description: A list of event items. o Attributes: * "action" + Desc: event list action + Type: tListAction + Use: optional o Elements: * + Desc: event one of (object or void) + Type: tEventItem + Use: zero or more occurrences Thompson Expires April 21, 2008 [Page 13] Internet-Draft ESDS Schema October 2007 2.1.13. tEventLifeCycleStepAllowItem o Description: event life cycle step allow item o Attributes: * "partnerID" + Desc: partner identifier + Type: tPartnerID + Use: required * "lifeCycleStepID" + Desc: life cycle step identifier + Type: tLifeCycleStepID + Use: required * "accessMode" + Desc: access mode + Type: tAccessMode + Use: required * "userID" + Desc: user identifier + Type: tUserID + Use: optional 2.1.14. tEventLifeCycleStepAllowItemList o Description: list of life cycle step allow items o Attributes: Thompson Expires April 21, 2008 [Page 14] Internet-Draft ESDS Schema October 2007 * "action" + Desc: event life cycle step allow list action + Type: tListAction + Use: optional o Elements: * + Desc: allow (do not deny) + Type: tEventLifeCycleStepAllowItem + Use: zero or more occurrences 2.1.15. tEventPriority o Description: event priority (0-9) where 0=lowest, 9=highest o Type: xs:int 2.1.16. tEventTopicID o Description: event topic identifier o Type: xs:token o Len: (2 - 64) characters 2.1.17. tEventTopicItem o Description: event topic item o Attributes: * "id" + Desc: topic identifier Thompson Expires April 21, 2008 [Page 15] Internet-Draft ESDS Schema October 2007 + Type: tEventTopicID + Use: required * "objectIDPattern" + Desc: object identifier pattern to match + Type: tObjectIDPattern + Use: required o Elements: * + Desc: life cycle step list + Type: tLifeCycleStepItemList + Use: optional, but no more than 1 occurrence(s) * + Desc: event class list + Type: tEventClassItemList + Use: optional, but no more than 1 occurrence(s) 2.1.18. tEventTopicItemList o Description: list of event topic items o Attributes: * "action" + Desc: event topic list action + Type: tListAction + Use: optional Thompson Expires April 21, 2008 [Page 16] Internet-Draft ESDS Schema October 2007 o Elements: * + Desc: event topic + Type: tEventTopicItem + Use: zero or more occurrences 2.1.19. tEventTTL o Description: event time to live in milliseconds o Type: xs:positiveInteger 2.1.20. tEventType o Description: event type or class of event o Type: xs:token o Enumerated Values: * void: * object: 2.1.21. tEventTypeChoice o Description: Set of event types to choose from. o Elements: * + Desc: event that voids an existing event referenced by + Type: tVoidEvent Thompson Expires April 21, 2008 [Page 17] Internet-Draft ESDS Schema October 2007 + Use: required * + Desc: object event + Type: tObjectEvent + Use: required 2.1.22. tExtension o Description: Extension xml comprised of a sequence of xs:any elements and xs: anyAttribute attributes. 2.1.23. tExtensionID o Description: Extension identifier, used to locate a registered extension by URI. o Type: xs:anyURI 2.1.24. tExtensionItem o Description: An entry in a list of extension items. o Attributes: * "id" + Desc: extension item identifier + Type: tExtensionID + Use: required 2.1.25. tExtensionItemList o Description: A list of extension items. Thompson Expires April 21, 2008 [Page 18] Internet-Draft ESDS Schema October 2007 o Attributes: * "action" + Desc: extension list action + Type: tListAction + Use: optional o Elements: * + Desc: user defined extension xml + Type: tExtensionItem + Use: zero or more occurrences 2.1.26. tGrantItem o Description: grant item o Attributes: * "o" + Desc: grant object + Type: tObject + Use: required * "m" + Desc: grant method + Type: tMethod + Use: required * "p" + Desc: grant permission Thompson Expires April 21, 2008 [Page 19] Internet-Draft ESDS Schema October 2007 + Type: tPermission + Use: required 2.1.27. tGrantItemList o Description: grant item list o Attributes: * "action" + Desc: grant list action + Type: tListAction + Use: optional o Elements: * + Desc: grant a permission + Type: tGrantItem + Use: zero or more occurrences 2.1.28. tInfoEvent o Description: Detailed event information. o Elements: * + Desc: event identifier + Type: tEventID + Use: required Thompson Expires April 21, 2008 [Page 20] Internet-Draft ESDS Schema October 2007 * + Desc: object identifier + Type: tObjectID + Use: required * + Desc: event type + Type: tEventType + Use: required * + Desc: event class + Type: tEventClass + Use: required * + Desc: life cycle step identifier + Type: tLifeCycleStepID + Use: required * + Desc: event injection timestamp + Type: xs:dateTime + Use: required * + Desc: client source system timestamp in UTC + Type: xs:dateTime + Use: required Thompson Expires April 21, 2008 [Page 21] Internet-Draft ESDS Schema October 2007 * + Desc: partner identifier + Type: tPartnerID + Use: required * + Desc: supply chain identifier + Type: tSupplyChainID + Use: required * + Desc: user identifier + Type: tUserID + Use: required * + Desc: list of services + Type: tServiceItemList + Use: optional, but no more than 1 occurrence(s) * + Desc: message digest + Type: tMessageDigest + Use: optional, but no more than 1 occurrence(s) * + Desc: priority + Type: tEventPriority + Use: optional, but no more than 1 occurrence(s) Thompson Expires April 21, 2008 [Page 22] Internet-Draft ESDS Schema October 2007 * + Desc: time to live + Type: tEventTTL + Use: optional, but no more than 1 occurrence(s) 2.1.29. tLargeUID o Description: unique identifer for large data sets o Type: xs:positiveInteger 2.1.30. tLeaseSeconds o Description: lease time in seconds after which the object will expire o Type: xs:int 2.1.31. tLifeCycleStepID o Description: Life cycle step identifier - registered URI that identifies a step within an industry or other defined processes life cycle state. o Type: xs:anyURI 2.1.32. tLifeCycleStepItem o Description: An entry in a list of life cycle step items. o Attributes: * "id" + Desc: life cycle step item identifier + Type: tLifeCycleStepID Thompson Expires April 21, 2008 [Page 23] Internet-Draft ESDS Schema October 2007 + Use: required 2.1.33. tLifeCycleStepItemList o Description: A list of life cycle step items. o Attributes: * "action" + Desc: life cycle step list action + Type: tListAction + Use: optional o Elements: * + Desc: life cycle step + Type: tLifeCycleStepItem + Use: zero or more occurrences 2.1.34. tListAction o Description: action to be taken with the list o Type: xs:token o Enumerated Values: * add: add all items in this list to the original list * remove: remove all items in this list from the original list * replace: replace the original list with all items in this list Thompson Expires April 21, 2008 [Page 24] Internet-Draft ESDS Schema October 2007 2.1.35. tLoginMode o Description: allowable mode of login o Type: xs:token o Enumerated Values: * key-and-password: allow a user to login with a public key or password * key-only: allow a user to login with a public key only 2.1.36. tMessageDigest o Description: message digest o Attributes: * "alg" + Desc: message digest algorithm + Type: tMessageDigestAlgorithm + Use: required o Elements: * + Desc: digest + Type: tMessageDigestHexString + Use: required 2.1.37. tMessageDigestAlgorithm o Description: message digest algorithm used to hash data Thompson Expires April 21, 2008 [Page 25] Internet-Draft ESDS Schema October 2007 o Type: xs:token o Enumerated Values: * md5: md5 hashing algorithm * md4: md4 hashing algorithm * md2: md2 hashing algorithm * sha1: sha1 hashing algorithm * sha: sha hashing algorithm * mdc2: mdc2 hashing algorithm * ripemd160: ripemd160 hashing algorithm 2.1.38. tMessageDigestHexString o Description: message digest or hash base 16 string o Type: xs:string o Len: (2 - 512) characters 2.1.39. tMethod o Description: Method that can be invoked on a given application object. o Type: xs:token o Enumerated Values: * hello: server keep-alive and service identity operation * login: authenticate and initiate a new session * logout: terminate an existing authenticated session * create: create a new instance of this object operation * update: update the details of this object Thompson Expires April 21, 2008 [Page 26] Internet-Draft ESDS Schema October 2007 * delete: delete an instance of an object * info: query detailed information on a particular object instance * lookup: query basic information for this object given search criteria 2.1.40. tObject o Description: Primary protocol object o Type: xs:token o Enumerated Values: * global: Global object * role: Role object * user: User object * partner: Partner object * supplychain: SupplyChain object * event: Event object 2.1.41. tObjectEvent o Description: An event that is associated with an object identifer. o Elements: * + Desc: user defined extension xml + Type: tExtension + Use: optional, but no more than 1 occurrence(s) Thompson Expires April 21, 2008 [Page 27] Internet-Draft ESDS Schema October 2007 * + Desc: priority + Type: tEventPriority + Use: optional, but no more than 1 occurrence(s) * + Desc: time to live + Type: tEventTTL + Use: optional, but no more than 1 occurrence(s) * + Desc: object identifier + Type: tObjectID + Use: required * + Desc: life cycle step identifier + Type: tLifeCycleStepID + Use: required * + Desc: event class + Type: tEventClass + Use: required * + Desc: client source system timestamp in UTC + Type: xs:dateTime + Use: required Thompson Expires April 21, 2008 [Page 28] Internet-Draft ESDS Schema October 2007 * + Desc: list of services + Type: tServiceIDList + Use: optional, but no more than 1 occurrence(s) * + Desc: message digest + Type: tMessageDigest + Use: optional, but no more than 1 occurrence(s) 2.1.42. tObjectID o Description: Object identifier - an encoding agnostic URI used as the primary search and storage key to which objects are tracked and then traced within the ESDS. o Type: xs:anyURI 2.1.43. tObjectIDPattern o Description: object identifier pattern o Type: xs:anyURI 2.1.44. tObjectItem o Description: An entry in a list of object items. o Attributes: * "id" + Desc: object item identifier + Type: tObjectID Thompson Expires April 21, 2008 [Page 29] Internet-Draft ESDS Schema October 2007 + Use: required 2.1.45. tObjectItemList o Description: A list of object items. o Attributes: * "action" + Desc: object list action + Type: tListAction + Use: optional o Elements: * + Desc: object + Type: tObjectItem + Use: zero or more occurrences 2.1.46. tPartnerID o Description: Partner identifier is a unique restricted string used to locate a partner within the ESDS. o Type: xs:token o Len: (2 - 64) characters 2.1.47. tPartnerItem o Description: An entry in a list of partner items. o Attributes: Thompson Expires April 21, 2008 [Page 30] Internet-Draft ESDS Schema October 2007 * "id" + Desc: partner item identifier + Type: tPartnerID + Use: required * "uid" + Desc: partner unique identifier + Type: tSmallUID + Use: optional * "authority" + Desc: If true then this partner within the supply chain in question has the authority to add other partners to the supply chain. + Type: xs:boolean + Use: optional 2.1.48. tPartnerItemList o Description: A list of partner items. o Attributes: * "action" + Desc: partner list action + Type: tListAction + Use: optional o Elements: * + Desc: partner list item Thompson Expires April 21, 2008 [Page 31] Internet-Draft ESDS Schema October 2007 + Type: tPartnerItem + Use: zero or more occurrences 2.1.49. tPassword o Description: Password used in combination with a user identifier to authenticate client access to the ESDS. o Type: xs:token o Len: (6 - 16) characters 2.1.50. tPermission o Description: Permission that can be associated with an object and method then assigned to a role which will then be enforced for a given user assigned that role. o Type: xs:token o Enumerated Values: * execute: Execute permission * proxy: Proxy permission * void: Void permission * admin: administrator permission 2.1.51. tReasonID o Description: Reason identifier is a URI that specifies a classification of reason codes and/or namespace for performing an action. o Type: xs:anyURI Thompson Expires April 21, 2008 [Page 32] Internet-Draft ESDS Schema October 2007 2.1.52. tResult o Description: Response structure returned for a given request. o Attributes: * "code" + Desc: result code + Type: tResultCode + Use: required * "desc" + Desc: result code description + Type: xs:string + Use: required o Elements: * + Desc: result value associated to the result code + Type: xs:string + Use: optional, but no more than 1 occurrence(s) 2.1.53. tResultCode o Description: Result code - a numeric value that adheres to the result code numbering scheme outlined in the Result Codes section of this document. o Type: xs:int o Enumerated Values: * 1000: Command completed successfully Thompson Expires April 21, 2008 [Page 33] Internet-Draft ESDS Schema October 2007 * 1001: Command completed successfully; action pending * 1500: Command completed successfully; ending session * 2000: Unknown command * 2001: Command syntax error * 2002: Command use error * 2003: Required parameter missing * 2004: Parameter value range error * 2005: Parameter value syntax error * 2100: Unimplemented protocol version * 2101: Unimplemented command * 2102: Unimplemented option * 2103: Unimplemented extension * 2104: Billing failure * 2200: Authentication error * 2201: Authorization error * 2202: Invalid authorization information * 2302: Object exists * 2303: Object does not exist * 2304: Object status prohibits operation * 2305: Object association prohibits operation * 2306: Parameter value policy error * 2306: Parameter value policy error * 2307: Unimplemented object service * 2400: Command failed Thompson Expires April 21, 2008 [Page 34] Internet-Draft ESDS Schema October 2007 * 2500: Command failed; server closing connection * 2501: Authentication error; server closing connection * 2502: Session limit exceeded; server closing connection 2.1.54. tRoleID o Description: Role identifier is a unique restricted string used to locate a role within the ESDS. o Type: xs:token o Len: (2 - 64) characters 2.1.55. tRoleItem o Description: An entry in a list of role items. o Attributes: * "id" + Desc: role item identifier + Type: tRoleID + Use: required * "uid" + Desc: role unique identifier + Type: tSmallUID + Use: optional 2.1.56. tRoleItemList o Description: A list of role items. Thompson Expires April 21, 2008 [Page 35] Internet-Draft ESDS Schema October 2007 o Elements: * + Desc: role list item + Type: tRoleItem + Use: zero or more occurrences 2.1.57. tServiceID o Description: service endpoint reference identifier o Type: xs:token o Len: (2 - 64) characters 2.1.58. tServiceIDList o Description: service identifier list o Attributes: * "action" + Desc: service id list action + Type: tListAction + Use: optional o Elements: * + Desc: identifier + Type: tServiceID + Use: zero or more occurrences Thompson Expires April 21, 2008 [Page 36] Internet-Draft ESDS Schema October 2007 2.1.59. tServiceItem o Description: An entry in a list of service items. o Attributes: * "id" + Desc: service identifier + Type: tServiceID + Use: required * "type" + Desc: endpoint service type + Type: tServiceType + Use: required * "uri" + Desc: endpoint service uri + Type: tServiceURI + Use: required 2.1.60. tServiceItemList o Description: A list of service items. o Attributes: * "action" + Desc: service list action + Type: tListAction + Use: optional Thompson Expires April 21, 2008 [Page 37] Internet-Draft ESDS Schema October 2007 o Elements: * + Desc: event service list item + Type: tServiceItem + Use: zero or more occurrences 2.1.61. tServiceType o Description: Service type is the service endpoint protocol identifier o Type: xs:token o Enumerated Values: * ws: web service interface service endpoint * epcis: electronic product code information service interface service endpoint * html: hypertext markup language interface service endpoint * xmlrpc: xml remote procedure interface service endpoint * ds: discovery service interface service endpoint 2.1.62. tServiceURI o Description: Service uniform resource identifier is the service endpoint location where detailed information about the nature of the event can be queried. o Type: xs:anyURI 2.1.63. tSessionID o Description: Session identifier is the unique system generated character sequence used to negotiate authenticated client user sessions with the ESDS. Thompson Expires April 21, 2008 [Page 38] Internet-Draft ESDS Schema October 2007 o Type: xs:token o Len: (32) characters 2.1.64. tSmallUID o Description: unique identifier for small data sets o Type: xs:int 2.1.65. tStatus o Description: status indicator o Type: xs:token o Enumerated Values: * active: active status * inactive: inactive status * pending: pending status * processed: processed status * failed: failed status 2.1.66. tSupplyChainID o Description: Supply chain identifier is a unique restricted string used to locate a supply chain within the ESDS. o Type: xs:token o Len: (2 - 64) characters 2.1.67. tSupplyChainItem o Description: An entry in a list of supply chain items. Thompson Expires April 21, 2008 [Page 39] Internet-Draft ESDS Schema October 2007 o Attributes: * "id" + Desc: supply chain item identifier + Type: tSupplyChainID + Use: required * "uid" + Desc: supply chain unique identifier + Type: tSmallUID + Use: optional 2.1.68. tSupplyChainItemList o Description: A list of supply chain items. o Attributes: * "action" + Desc: supply chain list action + Type: tListAction + Use: optional o Elements: * + Desc: supply chain + Type: tSupplyChainItem + Use: zero or more occurrences Thompson Expires April 21, 2008 [Page 40] Internet-Draft ESDS Schema October 2007 2.1.69. tTableID o Description: table identifier o Type: xs:token o Len: (2 - 128) characters 2.1.70. tTableRowItem o Description: table row item o Attributes: * "uid" + Desc: table row unique identifier + Type: tSmallUID + Use: required * "id" + Desc: table row identifier + Type: xs:string + Use: required * "desc" + Desc: table row description + Type: xs:string + Use: required 2.1.71. tTableRowItemList o Description: table row item list Thompson Expires April 21, 2008 [Page 41] Internet-Draft ESDS Schema October 2007 o Attributes: * "action" + Desc: table row list action + Type: tListAction + Use: optional o Elements: * + Desc: row + Type: tTableRowItem + Use: zero or more occurrences 2.1.72. tUserID o Description: User identifier is a unique restricted string used to locate a user within the ESDS. o Type: xs:token o Len: (2 - 16) characters 2.1.73. tUserItem o Description: An entry in a list of user items. o Attributes: * "id" + Desc: user item identifier + Type: tUserID + Use: required Thompson Expires April 21, 2008 [Page 42] Internet-Draft ESDS Schema October 2007 * "uid" + Desc: user unique identifier + Type: tSmallUID + Use: optional 2.1.74. tUserItemList o Description: A list of user items. o Attributes: * "action" + Desc: user list action + Type: tListAction + Use: optional o Elements: * + Desc: user list item + Type: tUserItem + Use: zero or more occurrences 2.1.75. tVoidEvent o Description: An event that amends a previously created event referenced by the original event identifier. o Elements: * + Desc: user defined extension xml Thompson Expires April 21, 2008 [Page 43] Internet-Draft ESDS Schema October 2007 + Type: tExtension + Use: optional, but no more than 1 occurrence(s) * + Desc: priority + Type: tEventPriority + Use: optional, but no more than 1 occurrence(s) * + Desc: time to live + Type: tEventTTL + Use: optional, but no more than 1 occurrence(s) * + Desc: event identifier + Type: tEventID + Use: required 2.1.76. tX509CertItem o Description: An entry in a list of X.509 certificate items. o Attributes: * "cn" + Desc: X.509 Certificate Common Name field + Type: tX509String + Use: required * "o" + Desc: X.509 Certificate Organization field Thompson Expires April 21, 2008 [Page 44] Internet-Draft ESDS Schema October 2007 + Type: tX509String + Use: required * "fingerprint" + Desc: X.509 certificate fingerprint + Type: tX509String + Use: required 2.1.77. tX509CertItemList o Description: A list of X.509 certificate items. o Attributes: * "action" + Desc: X.509 certificate list action + Type: tListAction + Use: optional o Elements: * + Desc: X.509 certificate + Type: tX509CertItem + Use: zero or more occurrences 2.1.78. tX509String o Description: X.509 string is an ASN.1 string type used to store key fields from X.509 certificates. o Type: xs:string Thompson Expires April 21, 2008 [Page 45] Internet-Draft ESDS Schema October 2007 o Len: (2 - 128) characters Thompson Expires April 21, 2008 [Page 46] Internet-Draft ESDS Schema October 2007 3. Formal Syntax ESDS is specified in XML WSDL [WSDL] and supporting XML Schema [XSD] notation. The formal syntax presented here is a complete WSDL and dependent schema for use in validation and implementation development. The BEGIN and END tags are not part of the schema; they are used to note the beginning and ending of the schema for URI registration purposes. 3.1. ESDS WSDL BEGIN Thompson Expires April 21, 2008 [Page 47] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 49] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 50] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 51] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 53] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 55] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 56] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 57] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 59] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 60] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 61] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 62] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 63] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 64] Internet-Draft ESDS Schema October 2007 END 3.2. ESDS Schema Thompson Expires April 21, 2008 [Page 65] Internet-Draft ESDS Schema October 2007 BEGIN Thompson Expires April 21, 2008 [Page 66] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 67] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 68] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 69] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 70] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 74] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 76] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 79] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 82] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 83] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 85] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 86] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 87] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 88] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 89] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 92] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 93] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 94] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 95] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 96] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 99] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 100] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 101] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 102] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 104] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 105] Internet-Draft ESDS Schema October 2007 Thompson Expires April 21, 2008 [Page 106] Internet-Draft ESDS Schema October 2007 END Thompson Expires April 21, 2008 [Page 107] Internet-Draft ESDS Schema October 2007 4. IANA Considerations This document has no actions for IANA. Thompson Expires April 21, 2008 [Page 108] Internet-Draft ESDS Schema October 2007 5. Security Considerations This RFC raises no security issues. Security considerations related to the ESDS interface operations can be found in Extensible Supply- chain Discovery Service Commands [draft-thompson-esds-commands]. Thompson Expires April 21, 2008 [Page 109] Internet-Draft ESDS Schema October 2007 6. Informative References [WSDL] Christensen, E., Curbera, F., Meredith, G., and S. Weerawarana, "Web Services Description Language (WSDL) 1.1", March 2001. [WSI] Ballinger, K., Ehnebuske, D., Gudgin, M., Nottingham, M., and P. Yendluri, "Basic Profile Version 1.0", April 2004. [XSD] Thompson, H., Beech, D., Maloney, M., and N. Mendelsohn, "XML Schema Part 1: Structures Second Edition", October 2004. [draft-thompson-esds-commands] Thompson, F., "Extensible Supply-chain Discovery Service Commands (work in progress)", April 2007. [draft-young-esds-concepts] Young, M., "Extensible Supply-chain Discovery Service Concepts (work in progress)", April 2007. Thompson Expires April 21, 2008 [Page 110] Internet-Draft ESDS Schema October 2007 Author's Address Frank Thompson Afilias Canada 204-4141 Yonge Street Toronto, ON M2P 2A8 CA Phone: +1.416.646.3304 Email: fot@ca.afilias.info Thompson Expires April 21, 2008 [Page 111] Internet-Draft ESDS Schema October 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Thompson Expires April 21, 2008 [Page 112]