Network Working Group                                        F. Thompson
Internet-Draft                                            Afilias Canada
Intended status: Informational                           August 29, 2008
Expires: March 2, 2009


           Extensible Supply-chain Discovery Service Commands
                    draft-thompson-esds-commands-04

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 March 2, 2009.

Copyright Notice

   Copyright (C) The IETF Trust (2008).














Thompson                  Expires March 2, 2009                 [Page 1]

Internet-Draft                ESDS Commands                  August 2008


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 describes the details of the command interface
   of the ESDS.  A full outline of all primary and support commands is
   included in this document along with examples.

   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
     1.1.  Conventions Used In This Document . . . . . . . . . . . .   5
   2.  Client Request  . . . . . . . . . . . . . . . . . . . . . . .   6
   3.  Server Response . . . . . . . . . . . . . . . . . . . . . . .   7
     3.1.  Result Codes  . . . . . . . . . . . . . . . . . . . . . .   7
   4.  Primary Object Commands . . . . . . . . . . . . . . . . . . .  13
     4.1.  <UserLogin> . . . . . . . . . . . . . . . . . . . . . . .  13
       4.1.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  13
       4.1.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  14
     4.2.  <UserLogout>  . . . . . . . . . . . . . . . . . . . . . .  15
       4.2.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  15
       4.2.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  16
     4.3.  <Hello> . . . . . . . . . . . . . . . . . . . . . . . . .  17
       4.3.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  17
       4.3.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  18
     4.4.  <EventCreate> . . . . . . . . . . . . . . . . . . . . . .  20
       4.4.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  20
       4.4.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  22
     4.5.  <EventDelete> . . . . . . . . . . . . . . . . . . . . . .  24
       4.5.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  24
       4.5.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  25
     4.6.  <EventInfo> . . . . . . . . . . . . . . . . . . . . . . .  26
       4.6.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  26
       4.6.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  27
     4.7.  <EventLookup> . . . . . . . . . . . . . . . . . . . . . .  31
       4.7.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  31
       4.7.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  34
   5.  Support Object Commands . . . . . . . . . . . . . . . . . . .  36
     5.1.  <Lookup>  . . . . . . . . . . . . . . . . . . . . . . . .  36
       5.1.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  36
       5.1.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  37
     5.2.  <RoleCreate>  . . . . . . . . . . . . . . . . . . . . . .  38
       5.2.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  38



Thompson                  Expires March 2, 2009                 [Page 2]

Internet-Draft                ESDS Commands                  August 2008


       5.2.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  40
     5.3.  <RoleInfo>  . . . . . . . . . . . . . . . . . . . . . . .  41
       5.3.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  41
       5.3.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  42
     5.4.  <RoleUpdate>  . . . . . . . . . . . . . . . . . . . . . .  44
       5.4.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  44
       5.4.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  46
     5.5.  <RoleDelete>  . . . . . . . . . . . . . . . . . . . . . .  47
       5.5.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  47
       5.5.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  48
     5.6.  <RoleLookup>  . . . . . . . . . . . . . . . . . . . . . .  49
       5.6.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  49
       5.6.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  50
     5.7.  <UserCreate>  . . . . . . . . . . . . . . . . . . . . . .  51
       5.7.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  51
       5.7.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  53
     5.8.  <UserInfo>  . . . . . . . . . . . . . . . . . . . . . . .  55
       5.8.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  55
       5.8.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  56
     5.9.  <UserUpdate>  . . . . . . . . . . . . . . . . . . . . . .  58
       5.9.1.  Request . . . . . . . . . . . . . . . . . . . . . . .  59
       5.9.2.  Response  . . . . . . . . . . . . . . . . . . . . . .  61
     5.10. <UserDelete>  . . . . . . . . . . . . . . . . . . . . . .  62
       5.10.1. Request . . . . . . . . . . . . . . . . . . . . . . .  62
       5.10.2. Response  . . . . . . . . . . . . . . . . . . . . . .  63
     5.11. <UserLookup>  . . . . . . . . . . . . . . . . . . . . . .  64
       5.11.1. Request . . . . . . . . . . . . . . . . . . . . . . .  64
       5.11.2. Response  . . . . . . . . . . . . . . . . . . . . . .  65
     5.12. <PartnerCreate> . . . . . . . . . . . . . . . . . . . . .  66
       5.12.1. Request . . . . . . . . . . . . . . . . . . . . . . .  66
       5.12.2. Response  . . . . . . . . . . . . . . . . . . . . . .  67
     5.13. <PartnerInfo> . . . . . . . . . . . . . . . . . . . . . .  68
       5.13.1. Request . . . . . . . . . . . . . . . . . . . . . . .  68
       5.13.2. Response  . . . . . . . . . . . . . . . . . . . . . .  69
     5.14. <PartnerUpdate> . . . . . . . . . . . . . . . . . . . . .  72
       5.14.1. Request . . . . . . . . . . . . . . . . . . . . . . .  72
       5.14.2. Response  . . . . . . . . . . . . . . . . . . . . . .  74
     5.15. <PartnerDelete> . . . . . . . . . . . . . . . . . . . . .  75
       5.15.1. Request . . . . . . . . . . . . . . . . . . . . . . .  75
       5.15.2. Response  . . . . . . . . . . . . . . . . . . . . . .  75
     5.16. <PartnerLookup> . . . . . . . . . . . . . . . . . . . . .  76
       5.16.1. Request . . . . . . . . . . . . . . . . . . . . . . .  76
       5.16.2. Response  . . . . . . . . . . . . . . . . . . . . . .  77
     5.17. <SupplyChainCreate> . . . . . . . . . . . . . . . . . . .  78
       5.17.1. Request . . . . . . . . . . . . . . . . . . . . . . .  78
       5.17.2. Response  . . . . . . . . . . . . . . . . . . . . . .  81
     5.18. <SupplyChainInfo> . . . . . . . . . . . . . . . . . . . .  82
       5.18.1. Request . . . . . . . . . . . . . . . . . . . . . . .  82



Thompson                  Expires March 2, 2009                 [Page 3]

Internet-Draft                ESDS Commands                  August 2008


       5.18.2. Response  . . . . . . . . . . . . . . . . . . . . . .  83
     5.19. <SupplyChainUpdate> . . . . . . . . . . . . . . . . . . .  87
       5.19.1. Request . . . . . . . . . . . . . . . . . . . . . . .  87
       5.19.2. Response  . . . . . . . . . . . . . . . . . . . . . .  90
     5.20. <SupplyChainDelete> . . . . . . . . . . . . . . . . . . .  91
       5.20.1. Request . . . . . . . . . . . . . . . . . . . . . . .  91
       5.20.2. Response  . . . . . . . . . . . . . . . . . . . . . .  92
     5.21. <SupplyChainLookup> . . . . . . . . . . . . . . . . . . .  93
       5.21.1. Request . . . . . . . . . . . . . . . . . . . . . . .  93
       5.21.2. Response  . . . . . . . . . . . . . . . . . . . . . .  94
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  96
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .  97
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  98
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  98
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  98
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  99
   Intellectual Property and Copyright Statements  . . . . . . . . . 100


































Thompson                  Expires March 2, 2009                 [Page 4]

Internet-Draft                ESDS Commands                  August 2008


1.  Introduction

   This document provides a detailed outline of the command interface
   for the Extensible Supply-chain Discovery Service (ESDS) and includes
   examples.  Extensible Supply-chain Discovery Service Concepts
   [draft-young-esds-concepts] introduces the ESDS and provides
   conceptual information about the protocol.  Extensible Supply-chain
   Discovery Service Schema [draft-thompson-esds-schema] details the
   schema for the ESDS, which is specified in Web Service Description
   Language (WSDL) and XML Schema (XSD).

   Comments are solicited and should be addressed to the working group's
   mailing list at esds@ietf.org and/or the author(s).

1.1.  Conventions Used In This Document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

   In examples, "C:" represents lines sent by a protocol client and "S:"
   represents lines returned by a protocol server.  Indentation and
   white space in examples is provided only to illustrate element
   relationships and is not a REQUIRED feature of this protocol.



























Thompson                  Expires March 2, 2009                 [Page 5]

Internet-Draft                ESDS Commands                  August 2008


2.  Client Request

   Commands within the ESDS are invoked as client requests, which in
   turn result in server responses.  This client/server conversation is
   expressed as SOAP/XML with the following basic structure for each
   request.  The details of the protocol syntax can be found in the ESDS
   Schema [draft-thompson-esds-schema].


   <?xml version="1.0" encoding="UTF-8"?>
   <soap:Envelope
       xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">

       <soap:Body>

           <esds:...>

           </esds:...>

       </soap:Body>
   </soap:Envelope





























Thompson                  Expires March 2, 2009                 [Page 6]

Internet-Draft                ESDS Commands                  August 2008


3.  Server Response

   Client command requests will result in a server response with the
   following basic structure expressed in SOAP/XML.  The detailed server
   response syntax can be found in the ESDS Schema
   [draft-thompson-esds-schema].


   <?xml version="1.0" encoding="UTF-8"?>
   <SOAP-ENV:Envelope
       xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0"

       <SOAP-ENV:Body>

           <esds:...Result

               <result
                   desc="COMMAND_COMPLETED_SUCCESSFULLY"
                   code="1000">
               </result>

           </esds:...Result>

       </SOAP-ENV:Body>
   </SOAP-ENV:Envelope>


3.1.  Result Codes

   ESDS result codes are based almost verbatim on those found in
   [RFC4930].  Re-use of these result codes and the client-server
   semantics has been done in an effort to adopt existing standards.
   Full credit MUST be given to the author of the EPP RFC [RFC4930].

   ESDS result codes are based on the theory of reply codes described in
   section 4.2.1 of [RFC2821].  ESDS uses four decimal digits to
   describe the success or failure of each ESDS command.  Each of the
   digits of the reply have special significance.

   The first digit denotes command success or failure.  The second digit
   denotes the response category, such as command syntax or security.
   The third and fourth digits provide explicit response detail within
   each response category.

   There are two values for the first digit of the reply code:




Thompson                  Expires March 2, 2009                 [Page 7]

Internet-Draft                ESDS Commands                  August 2008


   1yzz Positive completion reply.
   The command has been accepted and processed by the system without
   error.

   2yzz Negative completion reply.
   The command was not accepted and the requested action did not occur.

   The second digit groups responses into one of six specific
   categories:

   x0zz Protocol Syntax
   x1zz Implementation-specific Rules
   x2zz Security
   x3zz Data Management
   x4zz Server System
   x5zz Connection Management

   The third and fourth digits provide response detail within the
   categories defined by the first and second digits.  Specific result
   codes are listed in the table below.

   Every ESDS response MUST include a result code and a human-readable
   description of the result code.

   Response text in the table below is enclosed in quotes to clearly
   mark the beginning and ending of each response string.  Quotes MUST
   NOT be used to delimit these strings when returning response text via
   the protocol.

   Successful command completion responses:

   o  Code Response text in English
      _____________________________

   o  1000 "Command completed successfully"
      This is the usual response code for a successfully completed
      command that is not addressed by any other 1xxx-series response
      code.

   o  1001 "Command completed successfully; action pending"
      This response code MUST be returned when responding to a command
      that requires offline activity before the requested action can be
      completed.  See section 2 for a description of other processing
      requirements.

   o  1500 "Command completed successfully; ending session"
      This response code MUST be returned when responding to a
      successful <UserLogout> command.



Thompson                  Expires March 2, 2009                 [Page 8]

Internet-Draft                ESDS Commands                  August 2008


   Command error responses:

   o  Code Response text in English
      _____________________________

   o  2000 "Unknown command"
      This response code MUST be returned when a server receives a
      command element that is not defined by ESDS.

   o  2001 "Command syntax error"
      This response code MUST be returned when a server receives an
      improperly formed command element.

   o  2002 "Command use error"
      This response code MUST be returned when a server receives a
      properly formed command element, but the command cannot be
      executed due to a sequencing or context error.  For example, a
      <UserLogout> command cannot be executed without having first
      completed a <UserLogin> command.

   o  2003 "Required parameter missing"
      This response code MUST be returned when a server receives a
      command for which a required parameter value has not been
      provided.

   o  2004 "Parameter value range error"
      This response code MUST be returned when a server receives a
      command parameter whose value is outside the range of values
      specified by the protocol.  The error value SHOULD be returned via
      a <value> element in the ESDS response.

   o  2005 "Parameter value syntax error"
      This response code MUST be returned when a server receives a
      command containing a parameter whose value is improperly formed.
      The error value SHOULD be returned via a <value> element in the
      ESDS response.

   o  2100 "Unimplemented protocol version"
      This response code MUST be returned when a server receives a
      command element specifying a protocol version that is not
      implemented by the server.

   o  2101 "Unimplemented command"
      This response code MUST be returned when a server receives a valid
      ESDS command element that is not implemented by the server.

   o  2102 "Unimplemented option"
      This response code MUST be returned when a server receives a valid



Thompson                  Expires March 2, 2009                 [Page 9]

Internet-Draft                ESDS Commands                  August 2008


      ESDS command element that contains a protocol option that is not
      implemented by the server.

   o  2103 "Unimplemented extension"
      This response code MUST be returned when a server receives a valid
      ESDS command element that contains a protocol command extension
      that is not implemented by the server.

   o  2104 "Billing failure"
      This response code MUST be returned when a server attempts to
      execute a billable operation and the command cannot be completed
      due to a client billing failure.

   o  2200 "Authentication error"
      This response code MUST be returned when a server notes an error
      when validating client credentials.

   o  2201 "Authorization error"
      This response code MUST be returned when a server notes a client
      authorization error when executing a command.  This error is used
      to note that a client lacks privileges to execute the requested
      command.

   o  2202 "Invalid authorization information"
      This response code MUST be returned when a server receives invalid
      command authorization information required to confirm
      authorization to execute a command.  This error is used to note
      that a client has the privileges required to execute the requested
      command, but the authorization information provided by the client
      does not match the authorization information archived by the
      server.

   o  2302 "Object exists"
      This response code MUST be returned when a server receives a
      command to create an object that already exists in the repository.

   o  2303 "Object does not exist"
      This response code MUST be returned when a server receives a
      command to query or transform an object that does not exist in the
      repository.

   o  2304 "Object status prohibits operation"
      This response code MUST be returned when a server receives a
      command to transform an object that cannot be completed due to
      server policy or business practices.

   o  2305 "Object association prohibits operation"
      This response code MUST be returned when a server receives a



Thompson                  Expires March 2, 2009                [Page 10]

Internet-Draft                ESDS Commands                  August 2008


      command to transform an object that cannot be completed due to
      dependencies on other objects that are associated with the target
      object.  For example, a server can disallow delete commands while
      an object has active associations with other objects.

   o  2306 "Parameter value policy error"
      This response code MUST be returned when a server receives a
      command containing a parameter value that is syntactically valid,
      but semantically invalid due to local policy.  For example, the
      server can support a subset of a range of valid protocol parameter
      values.  The error value SHOULD be returned via a <value> element
      in the ESDS response.

   o  2307 "Unimplemented object service"
      This response code MUST be returned when a server receives a
      command to operate on an object service that is not supported by
      the server.

   o  2308 "Data management policy violation"
      This response code MUST be returned when a server receives a
      command whose execution results in a violation of server data
      management policies.  For example, removing all attribute values
      or object associations from an object might be a violation of a
      server's data management policies.

   o  2400 "Command failed"
      This response code MUST be returned when a server is unable to
      execute a command due to an internal server error that is not
      related to the protocol.  The failure can be transient.  The
      server MUST keep any ongoing session active.

   o  2500 "Command failed; server closing connection"
      This response code MUST be returned when a server receives a
      command that cannot be completed due to an internal server error
      that is not related to the protocol.  The failure is not
      transient, and will cause other commands to fail as well.  The
      server MUST end the active session and close the existing
      connection.

   o  2501 "Authentication error; server closing connection"
      This response code MUST be returned when a server notes an error
      when validating client credentials and a server-defined limit on
      the number of allowable failures has been exceeded.  The server
      MUST close the existing connection.

   o  2502 "Session limit exceeded; server closing connection"
      This response code MUST be returned when a server receives a
      <UserLogin> command, and the command cannot be completed because



Thompson                  Expires March 2, 2009                [Page 11]

Internet-Draft                ESDS Commands                  August 2008


      the client has exceeded a system-defined limit on the number of
      sessions that the client can establish.  It might be possible to
      establish a session by ending existing unused sessions and closing
      inactive connections.















































Thompson                  Expires March 2, 2009                [Page 12]

Internet-Draft                ESDS Commands                  August 2008


4.  Primary Object Commands

4.1.  <UserLogin>

4.1.1.  Request

   o  Description:

      user login inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required

      *  <password>

         +  Desc: password

         +  Type: tPassword

         +  Use: required















Thompson                  Expires March 2, 2009                [Page 13]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserLogin>
   C:      <extension>
   C:      </extension>
   C:      <userID>p1.u1</userID>
   C:      <password>foobar</password>
   C:    </esds:UserLogin>
   C:  </soap:Body>
   C:</soap:Envelope>


4.1.2.  Response

   o  Description:

      user login outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required




Thompson                  Expires March 2, 2009                [Page 14]

Internet-Draft                ESDS Commands                  August 2008


      *  <sessionLease>

         +  Desc: session lease, number of seconds before session is
            invalidated by the server between commands processed

         +  Type: tLeaseSeconds

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserLoginResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   S:      <sessionLease>1200</sessionLease>
   S:    </esds:UserLoginResult>
   S:  </soap:Body>
   S:</soap:Envelope>


4.2.  <UserLogout>

4.2.1.  Request

   o  Description:

      user logout inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension




Thompson                  Expires March 2, 2009                [Page 15]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserLogout>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:    </esds:UserLogout>
   C:  </soap:Body>
   C:</soap:Envelope>


4.2.2.  Response

   o  Description:

      user logout outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol





Thompson                  Expires March 2, 2009                [Page 16]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserLogoutResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:UserLogoutResult>
   S:  </soap:Body>
   S:</soap:Envelope>


4.3.  <Hello>

4.3.1.  Request

   o  Description:

      hello inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence









Thompson                  Expires March 2, 2009                [Page 17]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:Hello>
   C:      <extension>
   C:      </extension>
   C:    </esds:Hello>
   C:  </soap:Body>
   C:</soap:Envelope>


4.3.2.  Response

   o  Description:

      hello outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <serverIdentity>

         +  Desc: discovery service server instance identifier

         +  Type: xs:string

         +  Use: required






Thompson                  Expires March 2, 2009                [Page 18]

Internet-Draft                ESDS Commands                  August 2008


      *  <serverTS>

         +  Desc: discovery service server timestamp in UTC

         +  Type: xs:dateTime

         +  Use: required

      *  <extensionList>

         +  Desc: list of extensions

         +  Type: tExtensionItemList

         +  Use: optional, but no more than 1 occurrence



S:<?xml version="1.0" encoding="utf-8"?>
S:<soap:Envelope
S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
S:  <soap:Body>
S:    <esds:HelloResult>
S:      <result
S:        code="1000"
S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
S:        <value>none</value>
S:      </result>
S:      <extension>
S:      </extension>
S:      <serverIdentity>ADS (Afilias Discovery Service)</serverIdentity>
S:      <serverTS>2008-01-01T12:12:12.000Z</serverTS>
S:      <extensionList
S:        action="add">
S:        <item
S:          oid="d1">
S:        </item>
S:      </extensionList>
S:    </esds:HelloResult>
S:  </soap:Body>
S:</soap:Envelope>









Thompson                  Expires March 2, 2009                [Page 19]

Internet-Draft                ESDS Commands                  August 2008


4.4.  <EventCreate>

4.4.1.  Request

   o  Description:

      event create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: optional, but no more than 1 occurrence

      *  <login>

         +  Desc: login credientials for one time command execution with
            authentication

         +  Type: tLoginCreds

         +  Use: optional, but no more than 1 occurrence

      *  <event>

         +  Desc: parent container for event instances

         +  Type: tEventTypeChoice

         +  Use: required

      *  <supplyChainID>

         +  Desc: supply chain identifier




Thompson                  Expires March 2, 2009                [Page 20]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tSupplyChainID

         +  Use: required

      *  <proxyPartnerID>

         +  Desc: proxy partner identifier, proxy partner will be
            created if it does not exist within the supply chain;
            "proxy" role permission must be enabled for the command

         +  Type: tPartnerID

         +  Use: optional, but no more than 1 occurrence






































Thompson                  Expires March 2, 2009                [Page 21]

Internet-Draft                ESDS Commands                  August 2008


 C:<?xml version="1.0" encoding="utf-8"?>
 C:<soap:Envelope
 C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
 C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
 C:  <soap:Body>
 C:    <esds:EventCreate>
 C:      <extension>
 C:      </extension>
 C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
 C:      <login
 C:        userID="p1.u1"
 C:        password="foobar">
 C:      </login>
 C:      <event>
 C:        <objectEvent>
 C:          <extension>
 C:          </extension>
 C:          <objectID>urn:epc:id:sgtin:0614141.100734.2</objectID>
 C:          <lifeCycleStepID>received</lifeCycleStepID>
 C:          <sourceTS>2008-01-13T05:45:29.386Z</sourceTS>
 C:          <serviceIDList
 C:            action="replace">
 C:            <item>default</item>
 C:          </serviceIDList>
 C:          <messageDigest
 C:            alg="sha1">
 C:            <digest>af120d89c09051e5dc83d44cddb068f0ef54e347</digest>
 C:          </messageDigest>
 C:        </objectEvent>
 C:      </event>
 C:      <supplyChainID>sc1</supplyChainID>
 C:      <proxyPartnerID>p2</proxyPartnerID>
 C:    </esds:EventCreate>
 C:  </soap:Body>
 C:</soap:Envelope>


4.4.2.  Response

   o  Description:

      event create outbound parameters

   o  Elements:

      *  <result>





Thompson                  Expires March 2, 2009                [Page 22]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <eventID>

         +  Desc: event identifier

         +  Type: tEventID

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:EventCreateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <eventID>12345</eventID>
   S:    </esds:EventCreateResult>
   S:  </soap:Body>
   S:</soap:Envelope>









Thompson                  Expires March 2, 2009                [Page 23]

Internet-Draft                ESDS Commands                  August 2008


4.5.  <EventDelete>

4.5.1.  Request

   o  Description:

      event delete inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: optional, but no more than 1 occurrence

      *  <login>

         +  Desc: login credientials for one time command execution with
            authentication

         +  Type: tLoginCreds

         +  Use: optional, but no more than 1 occurrence

      *  <eventID>

         +  Desc: event identifier

         +  Type: tEventID

         +  Use: required








Thompson                  Expires March 2, 2009                [Page 24]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:EventDelete>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <login
   C:        userID="p1.u1"
   C:        password="foobar">
   C:      </login>
   C:      <eventID>12345</eventID>
   C:    </esds:EventDelete>
   C:  </soap:Body>
   C:</soap:Envelope>


4.5.2.  Response

   o  Description:

      event delete outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence








Thompson                  Expires March 2, 2009                [Page 25]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:EventDeleteResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:EventDeleteResult>
   S:  </soap:Body>
   S:</soap:Envelope>


4.6.  <EventInfo>

4.6.1.  Request

   o  Description:

      event info inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: optional, but no more than 1 occurrence

      *  <login>





Thompson                  Expires March 2, 2009                [Page 26]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: login credientials for one time command execution with
            authentication

         +  Type: tLoginCreds

         +  Use: optional, but no more than 1 occurrence

      *  <eventID>

         +  Desc: event identifier

         +  Type: tEventID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:EventInfo>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <login
   C:        userID="p1.u1"
   C:        password="foobar">
   C:      </login>
   C:      <eventID>12345</eventID>
   C:    </esds:EventInfo>
   C:  </soap:Body>
   C:</soap:Envelope>


4.6.2.  Response

   o  Description:

      event info outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response




Thompson                  Expires March 2, 2009                [Page 27]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <eventID>

         +  Desc: event identifier

         +  Type: tEventID

         +  Use: required

      *  <objectID>

         +  Desc: object identifier

         +  Type: tObjectID

         +  Use: required

      *  <lifeCycleStepID>

         +  Desc: life cycle step identifier

         +  Type: tLifeCycleStepID

         +  Use: required

      *  <eventTS>

         +  Desc: timestamp of event injection into the discovery
            service

         +  Type: xs:dateTime

         +  Use: required






Thompson                  Expires March 2, 2009                [Page 28]

Internet-Draft                ESDS Commands                  August 2008


      *  <sourceTS>

         +  Desc: client source system timestamp in UTC

         +  Type: xs:dateTime

         +  Use: required

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required

      *  <supplyChainID>

         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required

      *  <serviceList>

         +  Desc: list of services

         +  Type: tServiceItemList

         +  Use: optional, but no more than 1 occurrence

      *  <messageDigest>

         +  Desc: message digest, used to validate event has not been
            tampered with

         +  Type: tMessageDigest





Thompson                  Expires March 2, 2009                [Page 29]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: optional, but no more than 1 occurrence

      *  <voided>

         +  Desc: object was voided, child elements identity who and
            when object was voided

         +  Type: tVoided

         +  Use: optional, but no more than 1 occurrence









































Thompson                  Expires March 2, 2009                [Page 30]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:EventInfoResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <eventID>12345</eventID>
   S:      <objectID>urn:epc:id:sgtin:0614141.100734.2</objectID>
   S:      <lifeCycleStepID>received</lifeCycleStepID>
   S:      <eventTS>2008-01-13T05:45:29.377Z</eventTS>
   S:      <sourceTS>2008-01-13T05:45:29.386Z</sourceTS>
   S:      <partnerID>p1</partnerID>
   S:      <supplyChainID>sc1</supplyChainID>
   S:      <userID>p1.u1</userID>
   S:      <serviceList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          type="epcis"
   S:          uri="https://epcis.example.com">
   S:        </item>
   S:      </serviceList>
   S:      <messageDigest
   S:        alg="sha1">
   S:        <digest>af120d89c09051e5dc83d44cddb068f0ef54e347</digest>
   S:      </messageDigest>
   S:      <voided
   S:        by="p1.u1"
   S:        on="2008-01-01T00:00:01.123Z">
   S:      </voided>
   S:    </esds:EventInfoResult>
   S:  </soap:Body>
   S:</soap:Envelope>


4.7.  <EventLookup>

4.7.1.  Request






Thompson                  Expires March 2, 2009                [Page 31]

Internet-Draft                ESDS Commands                  August 2008


   o  Description:

      event lookup inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: optional, but no more than 1 occurrence

      *  <login>

         +  Desc: login credientials for one time command execution with
            authentication

         +  Type: tLoginCreds

         +  Use: optional, but no more than 1 occurrence

      *  <supplyChainID>

         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required

      *  <objectID>

         +  Desc: object identifier

         +  Type: tObjectID

         +  Use: required




Thompson                  Expires March 2, 2009                [Page 32]

Internet-Draft                ESDS Commands                  August 2008


      *  <lifeCycleStepID>

         +  Desc: life cycle step identifier

         +  Type: tLifeCycleStepID

         +  Use: optional, but no more than 1 occurrence

      *  <startingAt>

         +  Desc: starting timestamp range inclusive

         +  Type: xs:dateTime

         +  Use: optional, but no more than 1 occurrence

      *  <endingAt>

         +  Desc: ending timestamp range inclusive

         +  Type: xs:dateTime

         +  Use: optional, but no more than 1 occurrence



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:EventLookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <login
   C:        userID="p1.u1"
   C:        password="foobar">
   C:      </login>
   C:      <supplyChainID>sc1</supplyChainID>
   C:      <objectID>urn:epc:id:sgtin:0614141.100734.2</objectID>
   C:      <lifeCycleStepID>received</lifeCycleStepID>
   C:      <startingAt>2008-01-13T05:45:29.386Z</startingAt>
   C:      <endingAt>2008-01-13T05:45:29.377Z</endingAt>
   C:    </esds:EventLookup>
   C:  </soap:Body>
   C:</soap:Envelope>




Thompson                  Expires March 2, 2009                [Page 33]

Internet-Draft                ESDS Commands                  August 2008


4.7.2.  Response

   o  Description:

      event lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <eventList>

         +  Desc: list of events

         +  Type: tEventItemList

         +  Use: required



















Thompson                  Expires March 2, 2009                [Page 34]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:EventLookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <eventList
   S:        action="replace">
   S:        <item
   S:          e="12345"
   S:          o="event"
   S:          lcs="create"
   S:          ets="2008-01-01T00:00:01.123Z"
   S:          sts="2008-01-01T00:00:01.123Z"
   S:          u="p1.u1"
   S:          p="p1"
   S:          sc="sc1"
   S:          v_by="p1.u1"
   S:          v_on="2008-01-01T00:00:01.123Z">
   S:          <serviceList
   S:            action="replace">
   S:            <item
   S:              oid="d1"
   S:              type="epcis"
   S:              uri="https://epcis.example.com">
   S:            </item>
   S:          </serviceList>
   S:        </item>
   S:      </eventList>
   S:    </esds:EventLookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>












Thompson                  Expires March 2, 2009                [Page 35]

Internet-Draft                ESDS Commands                  August 2008


5.  Support Object Commands

5.1.  <Lookup>

5.1.1.  Request

   o  Description:

      lookup inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <tableID>

         +  Desc: table identifier

         +  Type: tTableID

         +  Use: required















Thompson                  Expires March 2, 2009                [Page 36]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:Lookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <tableID>t1</tableID>
   C:    </esds:Lookup>
   C:  </soap:Body>
   C:</soap:Envelope>


5.1.2.  Response

   o  Description:

      lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <rowList>

         +  Desc: list of rows

         +  Type: tTableRowItemList

         +  Use: required




Thompson                  Expires March 2, 2009                [Page 37]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:LookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <rowList
   S:        action="add">
   S:        <item
   S:          uid="100"
   S:          oid="d1"
   S:          desc="some description">
   S:        </item>
   S:      </rowList>
   S:    </esds:LookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.2.  <RoleCreate>

5.2.1.  Request

   o  Description:

      role create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>





Thompson                  Expires March 2, 2009                [Page 38]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required

      *  <grantList>

         +  Desc: list of role permission grants

         +  Type: tGrantItemList

         +  Use: optional, but no more than 1 occurrence



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:RoleCreate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <roleID>r1</roleID>
   C:      <grantList
   C:        action="add">
   C:        <item
   C:          o="event"
   C:          m="create"
   C:          p="p1">
   C:        </item>
   C:      </grantList>
   C:    </esds:RoleCreate>
   C:  </soap:Body>
   C:</soap:Envelope>






Thompson                  Expires March 2, 2009                [Page 39]

Internet-Draft                ESDS Commands                  August 2008


5.2.2.  Response

   o  Description:

      role create outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <roleUID>

         +  Desc: role unique identifier

         +  Type: tSmallUID

         +  Use: required



















Thompson                  Expires March 2, 2009                [Page 40]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:RoleCreateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <roleUID>100</roleUID>
   S:    </esds:RoleCreateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.3.  <RoleInfo>

5.3.1.  Request

   o  Description:

      role info inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required






Thompson                  Expires March 2, 2009                [Page 41]

Internet-Draft                ESDS Commands                  August 2008


      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:RoleInfo>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <roleID>r1</roleID>
   C:    </esds:RoleInfo>
   C:  </soap:Body>
   C:</soap:Envelope>


5.3.2.  Response

   o  Description:

      role info outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension




Thompson                  Expires March 2, 2009                [Page 42]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: optional, but no more than 1 occurrence

      *  <roleUID>

         +  Desc: role unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: required

      *  <grantList>

         +  Desc: list of role permission grants

         +  Type: tGrantItemList

         +  Use: optional, but no more than 1 occurrence


















Thompson                  Expires March 2, 2009                [Page 43]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:RoleInfoResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <roleUID>100</roleUID>
   S:      <roleID>r1</roleID>
   S:      <status>active</status>
   S:      <grantList
   S:        action="add">
   S:        <item
   S:          o="event"
   S:          m="create"
   S:          p="p1">
   S:        </item>
   S:      </grantList>
   S:    </esds:RoleInfoResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.4.  <RoleUpdate>

5.4.1.  Request

   o  Description:

      role update inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence




Thompson                  Expires March 2, 2009                [Page 44]

Internet-Draft                ESDS Commands                  August 2008


      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <roleUID>

         +  Desc: role unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: optional, but no more than 1 occurrence

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: optional, but no more than 1 occurrence

      *  <grantList>

         +  Desc: list of role permission grants

         +  Type: tGrantItemList

         +  Use: optional, but no more than 1 occurrence












Thompson                  Expires March 2, 2009                [Page 45]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:RoleUpdate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <roleUID>100</roleUID>
   C:      <status>active</status>
   C:      <roleID>r1</roleID>
   C:      <grantList
   C:        action="add">
   C:        <item
   C:          o="event"
   C:          m="create"
   C:          p="p1">
   C:        </item>
   C:      </grantList>
   C:    </esds:RoleUpdate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.4.2.  Response

   o  Description:

      role update outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension




Thompson                  Expires March 2, 2009                [Page 46]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:RoleUpdateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:RoleUpdateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.5.  <RoleDelete>

5.5.1.  Request

   o  Description:

      role delete inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID





Thompson                  Expires March 2, 2009                [Page 47]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:RoleDelete>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <roleID>r1</roleID>
   C:    </esds:RoleDelete>
   C:  </soap:Body>
   C:</soap:Envelope>


5.5.2.  Response

   o  Description:

      role delete outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol




Thompson                  Expires March 2, 2009                [Page 48]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:RoleDeleteResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:RoleDeleteResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.6.  <RoleLookup>

5.6.1.  Request

   o  Description:

      role lookup inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier





Thompson                  Expires March 2, 2009                [Page 49]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tSessionID

         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:RoleLookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <roleID>r1</roleID>
   C:    </esds:RoleLookup>
   C:  </soap:Body>
   C:</soap:Envelope>


5.6.2.  Response

   o  Description:

      role lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>





Thompson                  Expires March 2, 2009                [Page 50]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <roleList>

         +  Desc: list of roles

         +  Type: tRoleItemList

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:RoleLookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <roleList>
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </roleList>
   S:    </esds:RoleLookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.7.  <UserCreate>

5.7.1.  Request






Thompson                  Expires March 2, 2009                [Page 51]

Internet-Draft                ESDS Commands                  August 2008


   o  Description:

      user create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required

      *  <password>

         +  Desc: password

         +  Type: tPassword

         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required





Thompson                  Expires March 2, 2009                [Page 52]

Internet-Draft                ESDS Commands                  August 2008


      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required

      *  <sessionLease>

         +  Desc: session lease, number of seconds before session is
            invalidated by the server between commands processed

         +  Type: tLeaseSeconds

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserCreate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <userID>p1.u1</userID>
   C:      <password>foobar</password>
   C:      <roleID>r1</roleID>
   C:      <partnerID>p1</partnerID>
   C:      <sessionLease>1200</sessionLease>
   C:    </esds:UserCreate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.7.2.  Response

   o  Description:

      user create outbound parameters

   o  Elements:

      *  <result>




Thompson                  Expires March 2, 2009                [Page 53]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <userUID>

         +  Desc: user unique identifier, used for updates

         +  Type: tSmallUID

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserCreateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <userUID>102</userUID>
   S:    </esds:UserCreateResult>
   S:  </soap:Body>
   S:</soap:Envelope>









Thompson                  Expires March 2, 2009                [Page 54]

Internet-Draft                ESDS Commands                  August 2008


5.8.  <UserInfo>

5.8.1.  Request

   o  Description:

      user create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required

      *  <password>

         +  Desc: password

         +  Type: tPassword

         +  Use: required

      *  <roleID>

         +  Desc: role identifier





Thompson                  Expires March 2, 2009                [Page 55]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tRoleID

         +  Use: required

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required

      *  <sessionLease>

         +  Desc: session lease, number of seconds before session is
            invalidated by the server between commands processed

         +  Type: tLeaseSeconds

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserInfo>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <userID>p1.u1</userID>
   C:    </esds:UserInfo>
   C:  </soap:Body>
   C:</soap:Envelope>


5.8.2.  Response

   o  Description:

      user info outbound parameters

   o  Elements:

      *  <result>




Thompson                  Expires March 2, 2009                [Page 56]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <userUID>

         +  Desc: user unique identifier, used for updates

         +  Type: tSmallUID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: required

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: required





Thompson                  Expires March 2, 2009                [Page 57]

Internet-Draft                ESDS Commands                  August 2008


      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required

      *  <sessionLease>

         +  Desc: session lease, number of seconds before session is
            invalidated by the server between commands processed

         +  Type: tLeaseSeconds

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserInfoResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <userUID>102</userUID>
   S:      <userID>p1.u1</userID>
   S:      <status>active</status>
   S:      <roleID>r1</roleID>
   S:      <partnerID>p1</partnerID>
   S:      <sessionLease>1200</sessionLease>
   S:    </esds:UserInfoResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.9.  <UserUpdate>







Thompson                  Expires March 2, 2009                [Page 58]

Internet-Draft                ESDS Commands                  August 2008


5.9.1.  Request

   o  Description:

      user update inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <userUID>

         +  Desc: user unique identifier, used for updates

         +  Type: tSmallUID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: optional, but no more than 1 occurrence

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID





Thompson                  Expires March 2, 2009                [Page 59]

Internet-Draft                ESDS Commands                  August 2008


         +  Use: optional, but no more than 1 occurrence

      *  <password>

         +  Desc: password

         +  Type: tPassword

         +  Use: optional, but no more than 1 occurrence

      *  <roleID>

         +  Desc: role identifier

         +  Type: tRoleID

         +  Use: optional, but no more than 1 occurrence

      *  <sessionLease>

         +  Desc: session lease, number of seconds before session is
            invalidated by the server between commands processed

         +  Type: tLeaseSeconds

         +  Use: optional, but no more than 1 occurrence



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserUpdate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <userUID>102</userUID>
   C:      <status>active</status>
   C:      <userID>p1.u1</userID>
   C:      <password>foobar</password>
   C:      <roleID>r1</roleID>
   C:      <sessionLease>1200</sessionLease>
   C:    </esds:UserUpdate>
   C:  </soap:Body>
   C:</soap:Envelope>




Thompson                  Expires March 2, 2009                [Page 60]

Internet-Draft                ESDS Commands                  August 2008


5.9.2.  Response

   o  Description:

      user update outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserUpdateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:UserUpdateResult>
   S:  </soap:Body>
   S:</soap:Envelope>








Thompson                  Expires March 2, 2009                [Page 61]

Internet-Draft                ESDS Commands                  August 2008


5.10.  <UserDelete>

5.10.1.  Request

   o  Description:

      user delete inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserDelete>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <userID>p1.u1</userID>
   C:    </esds:UserDelete>



Thompson                  Expires March 2, 2009                [Page 62]

Internet-Draft                ESDS Commands                  August 2008


   C:  </soap:Body>
   C:</soap:Envelope>


5.10.2.  Response

   o  Description:

      user delete outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserDeleteResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:UserDeleteResult>
   S:  </soap:Body>
   S:</soap:Envelope>




Thompson                  Expires March 2, 2009                [Page 63]

Internet-Draft                ESDS Commands                  August 2008


5.11.  <UserLookup>

5.11.1.  Request

   o  Description:

      user lookup inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <userID>

         +  Desc: user identifier

         +  Type: tUserID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:UserLookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <userID>p1.u1</userID>
   C:    </esds:UserLookup>



Thompson                  Expires March 2, 2009                [Page 64]

Internet-Draft                ESDS Commands                  August 2008


   C:  </soap:Body>
   C:</soap:Envelope>


5.11.2.  Response

   o  Description:

      user lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <userList>

         +  Desc: list of users

         +  Type: tUserItemList

         +  Use: required















Thompson                  Expires March 2, 2009                [Page 65]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:UserLookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <userList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </userList>
   S:    </esds:UserLookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.12.  <PartnerCreate>

5.12.1.  Request

   o  Description:

      partner create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>





Thompson                  Expires March 2, 2009                [Page 66]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:PartnerCreate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <partnerID>p1</partnerID>
   C:    </esds:PartnerCreate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.12.2.  Response

   o  Description:

      partner create outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required





Thompson                  Expires March 2, 2009                [Page 67]

Internet-Draft                ESDS Commands                  August 2008


      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <partnerUID>

         +  Desc: partner unique identifier

         +  Type: tSmallUID

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:PartnerCreateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <partnerUID>104</partnerUID>
   S:    </esds:PartnerCreateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.13.  <PartnerInfo>

5.13.1.  Request

   o  Description:

      partner info inbound parameters

   o  Elements:




Thompson                  Expires March 2, 2009                [Page 68]

Internet-Draft                ESDS Commands                  August 2008


      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:PartnerInfo>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <partnerID>p1</partnerID>
   C:    </esds:PartnerInfo>
   C:  </soap:Body>
   C:</soap:Envelope>


5.13.2.  Response

   o  Description:

      partner info outbound parameters




Thompson                  Expires March 2, 2009                [Page 69]

Internet-Draft                ESDS Commands                  August 2008


   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <partnerUID>

         +  Desc: partner unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: required

      *  <createdByUserID>

         +  Desc: user id that this object was created by





Thompson                  Expires March 2, 2009                [Page 70]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tUserID

         +  Use: required

      *  <supplyChainList>

         +  Desc: list of supply chains

         +  Type: tSupplyChainItemList

         +  Use: required

      *  <userList>

         +  Desc: list of users

         +  Type: tUserItemList

         +  Use: required
































Thompson                  Expires March 2, 2009                [Page 71]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:PartnerInfoResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <partnerUID>104</partnerUID>
   S:      <partnerID>p1</partnerID>
   S:      <status>active</status>
   S:      <createdByUserID>p1.u1</createdByUserID>
   S:      <supplyChainList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </supplyChainList>
   S:      <userList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </userList>
   S:    </esds:PartnerInfoResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.14.  <PartnerUpdate>

5.14.1.  Request

   o  Description:

      partner update inbound parameters

   o  Elements:




Thompson                  Expires March 2, 2009                [Page 72]

Internet-Draft                ESDS Commands                  August 2008


      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <partnerUID>

         +  Desc: partner unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: optional, but no more than 1 occurrence

      *  <partnerID>

         +  Desc: partner identifier

         +  Type: tPartnerID

         +  Use: optional, but no more than 1 occurrence











Thompson                  Expires March 2, 2009                [Page 73]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:PartnerUpdate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <partnerUID>104</partnerUID>
   C:      <status>active</status>
   C:      <partnerID>p1</partnerID>
   C:    </esds:PartnerUpdate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.14.2.  Response

   o  Description:

      partner update outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence










Thompson                  Expires March 2, 2009                [Page 74]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:PartnerUpdateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:PartnerUpdateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.15.  <PartnerDelete>

5.15.1.  Request



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:PartnerDelete>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <partnerID>p1</partnerID>
   C:    </esds:PartnerDelete>
   C:  </soap:Body>
   C:</soap:Envelope>


5.15.2.  Response

   o  Description:

      partner delete outbound parameters

   o  Elements:





Thompson                  Expires March 2, 2009                [Page 75]

Internet-Draft                ESDS Commands                  August 2008


      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:PartnerDeleteResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:PartnerDeleteResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.16.  <PartnerLookup>

5.16.1.  Request











Thompson                  Expires March 2, 2009                [Page 76]

Internet-Draft                ESDS Commands                  August 2008


   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:PartnerLookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <partnerID>p1</partnerID>
   C:    </esds:PartnerLookup>
   C:  </soap:Body>
   C:</soap:Envelope>


5.16.2.  Response

   o  Description:

      partner lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <partnerList>

         +  Desc: list of partners

         +  Type: tPartnerItemList

         +  Use: required




Thompson                  Expires March 2, 2009                [Page 77]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:PartnerLookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <partnerList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </partnerList>
   S:    </esds:PartnerLookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.17.  <SupplyChainCreate>

5.17.1.  Request

   o  Description:

      supply chain create inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>





Thompson                  Expires March 2, 2009                [Page 78]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <supplyChainID>

         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required

      *  <partnerList>

         +  Desc: list of partners

         +  Type: tPartnerItemList

         +  Use: optional, but no more than 1 occurrence

      *  <serviceList>

         +  Desc: list of services

         +  Type: tServiceItemList

         +  Use: optional, but no more than 1 occurrence

      *  <objectIDAllowList>

         +  Desc: list of object ids to allow during event creation

         +  Type: tObjectIDTypeItemList

         +  Use: optional, but no more than 1 occurrence

      *  <lifeCycleStepList>

         +  Desc: life cycle step list

         +  Type: tLifeCycleStepItemList

         +  Use: optional, but no more than 1 occurrence






Thompson                  Expires March 2, 2009                [Page 79]

Internet-Draft                ESDS Commands                  August 2008


      *  <eventAccessList>

         +  Desc: list of event access instances

         +  Type: tEventAccessItemList

         +  Use: optional, but no more than 1 occurrence



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:SupplyChainCreate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <supplyChainID>sc1</supplyChainID>
   C:      <partnerList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          uid="100"
   C:          status="active">
   C:        </item>
   C:      </partnerList>
   C:      <serviceList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          type="epcis"
   C:          uri="https://epcis.example.com">
   C:        </item>
   C:      </serviceList>
   C:      <objectIDAllowList
   C:        action="add">
   C:        <item
   C:          oid="d1">
   C:        </item>
   C:      </objectIDAllowList>
   C:      <lifeCycleStepList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          action="add">
   C:        </item>



Thompson                  Expires March 2, 2009                [Page 80]

Internet-Draft                ESDS Commands                  August 2008


   C:      </lifeCycleStepList>
   C:      <eventAccessList
   C:        action="replace">
   C:        <item
   C:          accessType="allow"
   C:          supplyChainID="sc1"
   C:          partnerID="p1"
   C:          userID="p1.u1"
   C:          objectID="urn:epc:id:sgtin:0614141.100734.2"
   C:          lifeCycleStepID="default"
   C:          startingAt="2008-01-01T00:00:01.123Z"
   C:          endingAt="2008-01-01T00:00:01.123Z">
   C:        </item>
   C:      </eventAccessList>
   C:    </esds:SupplyChainCreate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.17.2.  Response

   o  Description:

      supply chain create outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <supplyChainUID>

         +  Desc: supply chain unique identifier




Thompson                  Expires March 2, 2009                [Page 81]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tSmallUID

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:SupplyChainCreateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <supplyChainUID>101</supplyChainUID>
   S:    </esds:SupplyChainCreateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.18.  <SupplyChainInfo>

5.18.1.  Request

   o  Description:

      supply chain info inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier




Thompson                  Expires March 2, 2009                [Page 82]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tSessionID

         +  Use: required

      *  <supplyChainID>

         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:SupplyChainInfo>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <supplyChainID>sc1</supplyChainID>
   C:    </esds:SupplyChainInfo>
   C:  </soap:Body>
   C:</soap:Envelope>


5.18.2.  Response

   o  Description:

      supply chain info outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>





Thompson                  Expires March 2, 2009                [Page 83]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <supplyChainUID>

         +  Desc: supply chain unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <supplyChainID>

         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: required

      *  <createdByUserID>

         +  Desc: user id that this object was created by

         +  Type: tUserID

         +  Use: required

      *  <partnerList>

         +  Desc: list of partners

         +  Type: tPartnerItemList

         +  Use: optional, but no more than 1 occurrence





Thompson                  Expires March 2, 2009                [Page 84]

Internet-Draft                ESDS Commands                  August 2008


      *  <serviceList>

         +  Desc: list of services

         +  Type: tServiceItemList

         +  Use: required

      *  <objectIDAllowList>

         +  Desc: list of object ids to allow during event creation

         +  Type: tObjectIDTypeItemList

         +  Use: optional, but no more than 1 occurrence

      *  <lifeCycleStepList>

         +  Desc: life cycle step list

         +  Type: tLifeCycleStepItemList

         +  Use: optional, but no more than 1 occurrence

      *  <eventAccessList>

         +  Desc: list of event access instances

         +  Type: tEventAccessItemList

         +  Use: optional, but no more than 1 occurrence



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:SupplyChainInfoResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <supplyChainUID>101</supplyChainUID>



Thompson                  Expires March 2, 2009                [Page 85]

Internet-Draft                ESDS Commands                  August 2008


   S:      <supplyChainID>sc1</supplyChainID>
   S:      <status>active</status>
   S:      <createdByUserID>p1.u1</createdByUserID>
   S:      <partnerList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </partnerList>
   S:      <serviceList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          type="epcis"
   S:          uri="https://epcis.example.com">
   S:        </item>
   S:      </serviceList>
   S:      <objectIDAllowList
   S:        action="add">
   S:        <item
   S:          oid="d1">
   S:        </item>
   S:      </objectIDAllowList>
   S:      <lifeCycleStepList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          action="add">
   S:        </item>
   S:      </lifeCycleStepList>
   S:      <eventAccessList
   S:        action="replace">
   S:        <item
   S:          accessType="allow"
   S:          supplyChainID="sc1"
   S:          partnerID="p1"
   S:          userID="p1.u1"
   S:          objectID="urn:epc:id:sgtin:0614141.100734.2"
   S:          lifeCycleStepID="default"
   S:          startingAt="2008-01-01T00:00:01.123Z"
   S:          endingAt="2008-01-01T00:00:01.123Z">
   S:        </item>
   S:      </eventAccessList>
   S:    </esds:SupplyChainInfoResult>
   S:  </soap:Body>
   S:</soap:Envelope>



Thompson                  Expires March 2, 2009                [Page 86]

Internet-Draft                ESDS Commands                  August 2008


5.19.  <SupplyChainUpdate>

5.19.1.  Request

   o  Description:

      supply chain update inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <supplyChainUID>

         +  Desc: supply chain unique identifier

         +  Type: tSmallUID

         +  Use: required

      *  <status>

         +  Desc: status of the object in question

         +  Type: tStatus

         +  Use: optional, but no more than 1 occurrence

      *  <supplyChainID>

         +  Desc: supply chain identifier





Thompson                  Expires March 2, 2009                [Page 87]

Internet-Draft                ESDS Commands                  August 2008


         +  Type: tSupplyChainID

         +  Use: optional, but no more than 1 occurrence

      *  <partnerList>

         +  Desc: list of partners

         +  Type: tPartnerItemList

         +  Use: optional, but no more than 1 occurrence

      *  <serviceList>

         +  Desc: list of services

         +  Type: tServiceItemList

         +  Use: optional, but no more than 1 occurrence

      *  <objectIDAllowList>

         +  Desc: list of object ids to allow during event creation

         +  Type: tObjectIDTypeItemList

         +  Use: optional, but no more than 1 occurrence

      *  <lifeCycleStepList>

         +  Desc: life cycle step list

         +  Type: tLifeCycleStepItemList

         +  Use: optional, but no more than 1 occurrence

      *  <eventAccessList>

         +  Desc: list of event access instances

         +  Type: tEventAccessItemList

         +  Use: optional, but no more than 1 occurrence



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope



Thompson                  Expires March 2, 2009                [Page 88]

Internet-Draft                ESDS Commands                  August 2008


   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:SupplyChainUpdate>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <supplyChainUID>101</supplyChainUID>
   C:      <status>active</status>
   C:      <supplyChainID>sc1</supplyChainID>
   C:      <partnerList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          uid="100"
   C:          status="active">
   C:        </item>
   C:      </partnerList>
   C:      <serviceList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          type="epcis"
   C:          uri="https://epcis.example.com">
   C:        </item>
   C:      </serviceList>
   C:      <objectIDAllowList
   C:        action="add">
   C:        <item
   C:          oid="d1">
   C:        </item>
   C:      </objectIDAllowList>
   C:      <lifeCycleStepList
   C:        action="replace">
   C:        <item
   C:          oid="d1"
   C:          action="add">
   C:        </item>
   C:      </lifeCycleStepList>
   C:      <eventAccessList
   C:        action="replace">
   C:        <item
   C:          accessType="allow"
   C:          supplyChainID="sc1"
   C:          partnerID="p1"
   C:          userID="p1.u1"
   C:          objectID="urn:epc:id:sgtin:0614141.100734.2"
   C:          lifeCycleStepID="default"



Thompson                  Expires March 2, 2009                [Page 89]

Internet-Draft                ESDS Commands                  August 2008


   C:          startingAt="2008-01-01T00:00:01.123Z"
   C:          endingAt="2008-01-01T00:00:01.123Z">
   C:        </item>
   C:      </eventAccessList>
   C:    </esds:SupplyChainUpdate>
   C:  </soap:Body>
   C:</soap:Envelope>


5.19.2.  Response

   o  Description:

      supply chain update outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence


















Thompson                  Expires March 2, 2009                [Page 90]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:SupplyChainUpdateResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:SupplyChainUpdateResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.20.  <SupplyChainDelete>

5.20.1.  Request

   o  Description:

      supply chain delete inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <supplyChainID>





Thompson                  Expires March 2, 2009                [Page 91]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:SupplyChainDelete>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <supplyChainID>sc1</supplyChainID>
   C:    </esds:SupplyChainDelete>
   C:  </soap:Body>
   C:</soap:Envelope>


5.20.2.  Response

   o  Description:

      supply chain delete outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence




Thompson                  Expires March 2, 2009                [Page 92]

Internet-Draft                ESDS Commands                  August 2008


   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:SupplyChainDeleteResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:    </esds:SupplyChainDeleteResult>
   S:  </soap:Body>
   S:</soap:Envelope>


5.21.  <SupplyChainLookup>

5.21.1.  Request

   o  Description:

      supply chain lookup inbound parameters

   o  Elements:

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence

      *  <sid>

         +  Desc: session identifier

         +  Type: tSessionID

         +  Use: required

      *  <supplyChainID>





Thompson                  Expires March 2, 2009                [Page 93]

Internet-Draft                ESDS Commands                  August 2008


         +  Desc: supply chain identifier

         +  Type: tSupplyChainID

         +  Use: required



   C:<?xml version="1.0" encoding="utf-8"?>
   C:<soap:Envelope
   C:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   C:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   C:  <soap:Body>
   C:    <esds:SupplyChainLookup>
   C:      <extension>
   C:      </extension>
   C:      <sid>76ywf4e76iVfw2B1H8u5P4eInL4RjEQ2</sid>
   C:      <supplyChainID>sc1</supplyChainID>
   C:    </esds:SupplyChainLookup>
   C:  </soap:Body>
   C:</soap:Envelope>


5.21.2.  Response

   o  Description:

      supply chain lookup outbound parameters

   o  Elements:

      *  <result>

         +  Desc: result structure common for each response

         +  Type: tResult

         +  Use: required

      *  <extension>

         +  Desc: user defined extension, allows well formed XML
            extensions to the base protocol

         +  Type: tExtension

         +  Use: optional, but no more than 1 occurrence




Thompson                  Expires March 2, 2009                [Page 94]

Internet-Draft                ESDS Commands                  August 2008


      *  <supplyChainList>

         +  Desc: list of supply chains

         +  Type: tSupplyChainItemList

         +  Use: required



   S:<?xml version="1.0" encoding="utf-8"?>
   S:<soap:Envelope
   S:  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
   S:  xmlns:esds="urn:ietf:params:xsd:ns:esds-1.0">
   S:  <soap:Body>
   S:    <esds:SupplyChainLookupResult>
   S:      <result
   S:        code="1000"
   S:        desc="COMMAND_COMPLETED_SUCCESSFULLY">
   S:        <value>none</value>
   S:      </result>
   S:      <extension>
   S:      </extension>
   S:      <supplyChainList
   S:        action="replace">
   S:        <item
   S:          oid="d1"
   S:          uid="100"
   S:          status="active">
   S:        </item>
   S:      </supplyChainList>
   S:    </esds:SupplyChainLookupResult>
   S:  </soap:Body>
   S:</soap:Envelope>

















Thompson                  Expires March 2, 2009                [Page 95]

Internet-Draft                ESDS Commands                  August 2008


6.  IANA Considerations

   This document has no actions for IANA.
















































Thompson                  Expires March 2, 2009                [Page 96]

Internet-Draft                ESDS Commands                  August 2008


7.  Security Considerations

   Security within the ESDS is layered as follows:

   o  HTTPS transport security if HTTP is the chosen transport protocol
      for the ESDS protocol.  [RFC2818]

   o  PLAIN SASL (Simple Authentication and Security Layer) identifier
      and password as plain text for login authentication.  Plain text
      will be encrypted inside the HTTPS connection as part of the SSL
      transport.

   o  Multiple user accounts with role-based permissions will be
      assigned to partners, enabling them to control their user access
      to the ESDS.

   o  A partner is associated with a supply chain only by partners
      within the supply chain that have been granted authority to add
      partners.
































Thompson                  Expires March 2, 2009                [Page 97]

Internet-Draft                ESDS Commands                  August 2008


8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2818]  Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000.

   [RFC2821]  Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
              April 2001.

   [RFC4930]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)",
              RFC 4930, May 2007.

8.2.  Informative References

   [draft-thompson-esds-schema]
              Thompson, F., "Extensible Supply-chain Discovery Service
              Schema (work in progress)", February 2008.

   [draft-young-esds-concepts]
              Young, M., "Extensible Supply-chain Discovery Service
              Concepts (work in progress)", April 2008.



























Thompson                  Expires March 2, 2009                [Page 98]

Internet-Draft                ESDS Commands                  August 2008


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 March 2, 2009                [Page 99]

Internet-Draft                ESDS Commands                  August 2008


Full Copyright Statement

   Copyright (C) The IETF Trust (2008).

   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 March 2, 2009               [Page 100]