One document matched: draft-legg-xed-schema-03.txt

Differences from draft-legg-xed-schema-02.txt







INTERNET-DRAFT                                                   S. Legg
draft-legg-xed-schema-03.txt                                     eB2Bcom
Intended Category: Standards Track                             D. Prager
Updates: [MODELS]                                      November 29, 2005


        The XML Enabled Directory: Schema Operational Attributes

               Copyright (C) The Internet Society (2005).

   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.

   By submitting this Internet-draft, I accept the provisions of
   Section 3 of BCP 78.

   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/1id-abstracts.html

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html

   Technical discussion of this document should take place on the XED
   developers mailing list <xeddev@eb2bcom.com>.  Please send editorial
   comments directly to the editor <steven.legg@eb2bcom.com>.  Further
   information is available on the XED website: www.xmled.info.

   This Internet-Draft expires on 29 May 2006.


Abstract

   This document defines additional subschema operational attributes for
   the XML Enabled Directory (XED) that allow user-defined directory



Legg & Prager              Expires 29 May 2006                  [Page 1]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   attribute syntaxes to be imported into a directory server.  User
   defined syntaxes specified in XML Schema, RELAX NG or Abstract Syntax
   Notation One (ASN.1), or specified as XML document type definition
   (DTD) element type declarations, are supported.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
   2.  Conventions. . . . . . . . . . . . . . . . . . . . . . . . . .  2
   3.  Additional System Schema . . . . . . . . . . . . . . . . . . .  3
       3.1.  The Schema Identity Syntax . . . . . . . . . . . . . . .  3
       3.2.  The Identified Schema Syntax . . . . . . . . . . . . . .  3
       3.3.  The schemaIdentityMatch Matching Rule. . . . . . . . . .  5
       3.4.  The definitions Attribute. . . . . . . . . . . . . . . .  6
   4.  Referencing Imported Schemas . . . . . . . . . . . . . . . . .  6
   5.  Example. . . . . . . . . . . . . . . . . . . . . . . . . . . .  7
   6.  Security Considerations. . . . . . . . . . . . . . . . . . . . 11
   7.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11
   8.  IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 12
   Appendix A. ASN.1 for XED Schema . . . . . . . . . . . . . . . . . 12
   Appendix B. ASN.X for XED Schema . . . . . . . . . . . . . . . . . 14
   Appendix C. XML Schema for XED Schema. . . . . . . . . . . . . . . 16
   Normative References . . . . . . . . . . . . . . . . . . . . . . . 17
   Informative References . . . . . . . . . . . . . . . . . . . . . . 18
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 19
   Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 19

1.  Introduction

   This document defines additional subschema operational attributes for
   the XML Enabled Directory (XED) [XED] that allow user-defined
   attribute syntaxes to be imported into a directory server.  User
   defined syntaxes specified in XML Schema [XSD1], RELAX NG [RNG] or
   Abstract Syntax Notation One (ASN.1) [X.680] (in the form of Abstract
   Syntax Notation X (ASN.X) [ASN.X]), or specified as XML document type
   definition (DTD) [XML10] element type declarations, are supported.

   The Attribute Type Description syntax [SYNTAX] is extended to enable
   definitions from an imported user-defined schema to be referenced in
   the definition of the syntax of a directory attribute type.

2.  Conventions

   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 BCP 14, RFC 2119
   [BCP14].




Legg & Prager              Expires 29 May 2006                  [Page 2]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   This specification makes use of definitions from the XML Information
   Set (Infoset) [ISET].  In particular, information item property names
   are presented per the Infoset, e.g., [local name].  In the sections
   that follow, the term "element" shall be taken to mean an Infoset
   element information item.

   The term "attribute" shall be taken to mean a directory attribute,
   not an Infoset attribute information item.

   Throughout this document the term "type" is always qualified as
   either an attribute type, ASN.1 type, or XML Schema type, as
   appropriate.

3.  Additional System Schema

   An additional subschema operational attribute is defined to hold user
   supplied schema definitions.  This attribute requires the definition
   of new attribute syntaxes and a new matching rule [MODELS].

   The ASN.1 definitions in this section are consolidated in the XED-
   SchemaOperationalAttributes ASN.1 module in Appendix A.  The ASN.X
   translation of this module is presented in Appendix B, and the
   XML Schema translation [CXSD] of the module is presented in
   Appendix C.

3.1.  The Schema Identity Syntax

   A value of the Schema Identity syntax is a URI [URI] identifying a
   schema definition document.

   The LDAP definition for the Schema Identity syntax is:

      ( 1.3.6.1.4.1.21472.5.5.0 DESC 'Schema Identity' )

   The LDAP-specific encoding for a value of the Schema Identity syntax
   is the URI character string.

   The ASN.1 type corresponding to the Schema Identity syntax is defined
   as follows:

      SchemaIdentity ::= AnyURI

   The AnyURI ASN.1 type is defined by the specification for the Robust
   XML Encoding Rules (RXER) [RXER].

3.2.  The Identified Schema Syntax

   A value of the Identified Schema syntax is a URI identifying a schema



Legg & Prager              Expires 29 May 2006                  [Page 3]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   definition along with the schema definition document itself; either
   an ASN.X document, an XML Schema document, a RELAX NG grammar, or an
   external DTD subset [XML10].

   The LDAP definition for the Identified Schema syntax is:

      ( 1.3.6.1.4.1.21472.5.5.1 DESC 'Identified Schema' )

   The ASN.1 type corresponding to the Identified Schema syntax is
   defined as follows, assuming AUTOMATIC TAGS:

      IdentifiedSchema ::= SEQUENCE {
          identifier  SchemaIdentity,
          document    SchemaDocument }

      SchemaDocument ::= CHOICE {
          module   [RXER:ELEMENT-REF {
                       namespace-name "http://xmled.info/ns/ASN.1",
                       local-name "module" }] AnyType,
          schema   [RXER:ELEMENT-REF {
                       namespace-name
                           "http://www.w3.org/2001/XMLSchema",
                       local-name "schema" }] AnyType,
          grammar  [RXER:ELEMENT-REF {
                       namespace-name
                           "http://relaxng.org/ns/structure/1.0",
                       local-name "grammar" }] AnyType,
          dtd      ExternalSubset }

      ExternalSubset ::= UTF8String (CONSTRAINED BY {
                             -- contains an external DTD subset,
                             -- i.e., text conforming to
                             -- the extSubset production of XML -- })

   The LDAP-specific encoding of a value of the Identified Schema syntax
   is defined to be the same as the encoding of the value according to
   the "transfer-rxer" transfer encoding option [TRANSFER].

      ASIDE: This does not impose a requirement to actually use the
      "transfer-rxer" option when requesting and transferring attributes
      of the Identified Schema syntax.

   The dtd alternative of the document component of a value of the
   Identified Schema syntax is constrained to contain an external DTD
   subset, i.e., text conforming to the extSubset production of XML
   [XML10].  When the dtd alternative of the document component is
   selected, the identifier component of the value SHOULD contain the
   system identifier [XML10] of the external DTD subset.



Legg & Prager              Expires 29 May 2006                  [Page 4]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   Note that an internal DTD subset, i.e., text conforming to the
   intSubset production of XML, is also of the correct syntactic form
   for an external DTD subset.  Where a DTD comprises both an external
   subset and an internal subset it is necessary to append the external
   subset to the internal subset for storage in the dtd alternative of
   the document component.  If the DTD subset references an external
   parameter entity that conforms to the extSubset production then that
   entity MAY be stored as a separate value of the Identified Schema
   syntax, in which case the identifier component of this separate value
   SHOULD be the system identifier [XML10] of the external parameter
   entity.  Otherwise, an external parameter entity MUST be replaced in
   the DTD subset by its replacement text or included in the DTD subset
   as an equivalent internal parameter entity.

   Where an external parameter entity is stored as a separate value of
   the Identified Schema syntax, the identifier component of that value
   MUST be the same as the system identifier in the corresponding
   external entity declaration in the DTD subset.

   Note that in the RXER encoding [RXER] of a value of the Identified
   Schema syntax, markup in the dtd alternative must be escaped.  This
   is most easily achieved by encoding the string value of the dtd
   alternative within a CDATA section [XML10][XML11].

3.3.  The schemaIdentityMatch Matching Rule

   The schemaIdentityMatch matching rule compares an assertion value of
   the Schema Identity syntax to an attribute value of a syntax (e.g the
   Identified Schema syntax) whose corresponding ASN.1 type is a
   SEQUENCE with a mandatory first component of the SchemaIdentity ASN.1
   type.

   Note that the assertion syntax of this matching rule differs from the
   attribute syntax of attributes for which this is the equality
   matching rule.

   The rule evaluates to TRUE if and only if the assertion value and the
   first component of the attribute value have the same number of
   characters and corresponding characters have the same code point.

   The LDAP-style definition for the schemaIdentityMatch matching rule
   is:

      ( 1.3.6.1.4.1.21472.5.13.0 NAME 'schemaIdentityMatch'
          SYNTAX 1.3.6.1.4.1.21472.5.5.0 )

   The X.500-style definition for the schemaIdentityMatch matching rule
   is:



Legg & Prager              Expires 29 May 2006                  [Page 5]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


      schemaIdentityMatch MATCHING-RULE ::= {
          SYNTAX  SchemaIdentity
          ID      { iso(1) identified-organization(3) dod(6)
                    internet(1) private(4) enterprise(1)
                    xmled(21472) ds(5) matchingRule(13) 0 } }

3.4.  The definitions Attribute

   User defined schema documents are imported into a XED server as
   values of the definitions attribute in the subschema subentry
   [MODELS].  A particular schema document potentially appears in more
   than one subschema subentry, in which case the same identifier MUST
   be used for the schema document throughout the Directory Information
   Tree (DIT) [MODELS].

   The LDAP-style definition for the definitions attribute is:

      ( 1.3.6.1.4.1.21472.5.21.0 NAME 'definitions'
          EQUALITY schemaIdentityMatch
          SYNTAX 1.3.6.1.4.1.21472.5.5.1
          USAGE directoryOperation )

   The X.500-style definition for the definitions attribute is:

      definitions ATTRIBUTE ::= {
          WITH SYNTAX             IdentifiedSchema
          EQUALITY MATCHING RULE  schemaIdentityMatch
          USAGE                   directoryOperation
          ID   { iso(1) identified-organization(3) dod(6)
                 internet(1) private(4) enterprise(1)
                 xmled(21472) ds(5) schemaOperationalAttribute(21) 0 } }

4.  Referencing Imported Schemas

   Since the second edition of X.500, users have theoretically been able
   to import their own attribute syntax definitions into subschema in
   the form of ASN.1 type definitions.  The attributeSyntax component of
   the AttributeTypeDescription ASN.1 type [X.501] (the associated ASN.1
   type for the Attribute Type Description syntax [SYNTAX]) is a
   character string permitted to contain the text of an ASN.1 type
   definition.  However, the LDAP-specific encoding of the
   AttributeTypeDescription ASN.1 type replaces the character string
   with an OBJECT IDENTIFIER [X.680], effectively allowing only
   predefined syntaxes in LDAP.

   This specification extends the LDAP-specific encoding of the
   Attribute Type Description syntax to include a field to render the
   character string content of the attributeSyntax component, and



Legg & Prager              Expires 29 May 2006                  [Page 6]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   additionally permits the syntax to be described using ASN.X, which is
   more easily parsed than ASN.1 type notation.  Encoding instructions
   [X.680-1] for RXER [RXEREI] enable XML Schema, RELAX NG and DTD
   definitions to be simply referenced from an ASN.1 type definition,
   thus providing the means to define an attribute syntax in terms of
   these other languages.

   The <AttributeTypeDescription> [MODELS] Augmented Backus-Naur Form
   (ABNF) [ABNF] rule is extended by the inclusion of the following ABNF
   placed immediately following the ABNF for the optional SYNTAX field:

      [ SP "SYNTAX-DEFINITION" SP qdstring ]

   The content corresponding to the <qdstring> rule is the character
   string content of the attributeSyntax component of an instance of the
   AttributeTypeDescription ASN.1 type.

   The attributeSyntax component is permitted to contain any character
   string which is a valid ASN.X type definition (i.e., an ASN.X <type>
   element), in addition to the content already prescribed by X.501
   [X.501].  When the attributeSyntax component contains an ASN.X type
   definition, the TagDefault [X.680] is assumed to be AUTOMATIC TAGS
   and the ExtensionDefault [X.680] is assumed to be empty.

   If an attribute type is a subtype and an attribute syntax is
   specified then that syntax MUST be compatible with the syntax of the
   supertype, i.e., every possible abstract value of the subtype's
   syntax must be an abstract value of the supertype's syntax.

      ASIDE: In the case where the syntax of the supertype is a
      reference to an XML Schema type then this requirement is satisfied
      if the syntax of the subtype is the same XML Schema type, or a
      type derived from it by restriction.

   An attribute syntax defined through a SYNTAX-DEFINITION field is not
   required to have an associated syntax object identifier [SYNTAX]
   (thus an attribute definition with a SYNTAX-DEFINITION field is not
   required to also have a SYNTAX field).

   If the SYNTAX-DEFINITION string contains an ASN.X <type> element and
   the SYNTAX field is absent then the LDAP-specific encoding for values
   of the attribute is assumed to be the same as the "transfer-rxer"
   encoding [TRANSFER].

5.  Example

   Suppose a directory administrator wishes to define two new attributes
   to hold data conforming to the Address datatype from the Addresses



Legg & Prager              Expires 29 May 2006                  [Page 7]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   for International Purchase Order schema (address.xsd) [XSD0] and the
   <purchaseOrder> element from the International Purchase Order Schema
   (ipo.xsd) [XSD0].

   The first step is to install the schema definitions into the
   subschema subentry.  Using LDAP, this is done by adding the two
   following (much abbreviated) values to the definitions attribute in
   the subschema subentry:

   <?xml version="1.0"?>
   <value>
    <identifier>http://www.example.com/schemas/ipo.xsd</identifier>
    <document>
     <schema targetNamespace="http://www.example.com/IPO"
             xmlns="http://www.w3.org/2001/XMLSchema"
             xmlns:ipo="http://www.example.com/IPO">

      <annotation>
       <documentation xml:lang="en">
        International Purchase order schema for Example.com
        Copyright 2000 Example.com. All rights reserved.
       </documentation>
      </annotation>

      etc.

     </schema>
    </document>
   </value>

   <?xml version="1.0"?>
   <value>
    <identifier>http://www.example.com/schemas/address.xsd</identifier>
    <document>
     <schema targetNamespace="http://www.example.com/IPO"
             xmlns="http://www.w3.org/2001/XMLSchema"
             xmlns:ipo="http://www.example.com/IPO">

      <annotation>
       <documentation xml:lang="en">
        Addresses for International Purchase order schema
        Copyright 2000 Example.com. All rights reserved.
       </documentation>
      </annotation>

      etc.

     </schema>



Legg & Prager              Expires 29 May 2006                  [Page 8]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


    </document>
   </value>

   Note that the LDAP-specific encoding for values of the definitions
   attribute is exactly the same as the "transfer-rxer" encoding.

   The value could also be added using XLDAP [XLDAP], using exactly the
   same markup for the <value> elements.

   An attribute with the Address datatype as its syntax is defined for
   LDAP like so:

      ( 1.3.6.1.4.1.21472.5.4.0.0 NAME 'ipo-address'
         SYNTAX-DEFINITION '
         <type xmlns:ipo="http://www.example.com/IPO"
               ref="ipo:Address"/>')

   which is also the LDAP-specific encoding of the value of the
   Attribute Type Description syntax that must be added to the
   attributeTypes attribute in the subschema subentry to publish the
   definition of the ipo-address attribute.

   The "transfer-rxer" encoding for the definition of the ipo-address
   attribute is:

      <?xml version="1.0"?>
      <value>
       <identifier>1.3.6.1.4.1.21472.5.4.0.0</identifier>
       <name>
        <item>ipo-address</item>
       </name>
       <information>
        <attributeSyntax><![CDATA[
         <type xmlns:ipo="http://www.example.com/IPO"
               ref="ipo:Address"/>]]></attributeSyntax>
       </information>
      </value>

   The attributeSyntax component is a DirectoryString [X.501] hence
   markup embedded in it must be escaped (in this case using a CDATA
   section).

   The definition of the ipo-address attribute could also be added to a
   subschema subentry using XLDAP, using exactly the same markup for the
   <value> element.

   An attribute whose values each contain a single <purchaseOrder>
   element can be defined for LDAP like so:



Legg & Prager              Expires 29 May 2006                  [Page 9]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


      ( 1.3.6.1.4.1.21472.5.4.0.1 NAME 'purchaseOrder'
         SYNTAX-DEFINITION '
         <type xmlns:ipo="http://www.example.com/IPO">
          <choice>
           <element ref="ipo:purchaseOrder/>
          </choice>
         </type>' )

   The "transfer-rxer" encoding for the definition of the purchaseOrder
   attribute is:

      <?xml version="1.0"?>
      <value>
       <identifier>1.3.6.1.4.1.21472.5.4.0.1</identifier>
       <name>
        <item>purchaseOrder</item>
       </name>
       <information>
        <attributeSyntax><![CDATA[
         <type xmlns:ipo="http://www.example.com/IPO">
          <choice>
           <element ref="ipo:purchaseOrder/>
          </choice>
         </type>]]></attributeSyntax>
       </information>
      </value>

   The format for the contents of the attributeSyntax component has been
   chosen for consistency with the ASN.X representation of attribute
   type definitions in X.500.  Consider the X.500-style definitions for
   the ipo-address and purchaseOrder attributes.

      ipo-address ATTRIBUTE ::= {
          WITH SYNTAX  [RXER:TYPE-REF {
                           namespace-name "http://www.example.com/IPO",
                           local-name     "Address" }]
                       AnyType
          ID  { iso(1) identified-organization(3) dod(6)
                internet(1) private(4) enterprise(1)
                xmled(21472) ds(5) attributeType(4) example(0) 0 } }

      purchaseOrder ATTRIBUTE ::= {
          WITH SYNTAX
              CHOICE {
                  purchaseOrder
                      [RXER:ELEMENT-REF {
                          namespace-name "http://www.example.com/IPO",
                          local-name     "purchaseOrder" }]



Legg & Prager              Expires 29 May 2006                 [Page 10]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


                      AnyType
              }
          ID  { iso(1) identified-organization(3) dod(6)
                internet(1) private(4) enterprise(1)
                xmled(21472) ds(5) attributeType(4) example(0) 1 } }

   An ASN.X representation for these two ATTRIBUTE information objects
   is (where the namespace prefix "inf:" stands for the namespace name
   "http://xmled.info/ns/X.500/4/InformationFramework"):

      <namedObject name="ipo-address" class="inf:ATTRIBUTE">
       <object>
        <field name="Type">
         <type xmlns:ipo="http://www.example.com/IPO"
               ref="ipo:Address"/>
        </field>
        <field name="id" literalValue="1.3.6.1.4.1.21472.5.4.0.0"/>
       </object>
      </namedObject>

      <namedObject name="purchaseOrder" class="inf:ATTRIBUTE">
       <object>
        <field name="Type">
          <type xmlns:ipo="http://www.example.com/IPO">
           <choice>
            <element ref="ipo:purchaseOrder/>
           </choice>
          </type>
        </field>
        <field name="id" literalValue="1.3.6.1.4.1.21472.5.4.0.1"/>
       </object>
      </namedObject>

   Note the correspondence between the content of the "Type" fields in
   the ASN.X representation of the information objects, the
   SYNTAX-DEFINITION fields in the LDAP attribute definitions, and the
   <attributeSyntax> components in the "transfer-rxer" encodings of
   AttributeTypeDescription.

6.  Security Considerations

   Attributes of directory entries are used to provide descriptive
   information about the real-world objects they represent, which can be
   people, organizations and devices, among other things.  Most
   countries have privacy laws regarding the publication of information
   about people.

7.  Acknowledgements



Legg & Prager              Expires 29 May 2006                 [Page 11]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   This document and the technology it describes are a product of a
   joint research project between Adacel Technologies Limited and Deakin
   University on leveraging existing directory technology to produce an
   XML-based directory service.

8.  IANA Considerations

   The Internet Assigned Numbers Authority (IANA) is requested to update
   the LDAP descriptors registry [BCP64] as indicated by the following
   templates:

      Subject: Request for LDAP Descriptor Registration
      Descriptor (short name): schemaIdentityMatch
      Object Identifier: 1.3.6.1.4.1.21472.5.13.0
      Person & email address to contact for further information:
        Steven Legg <steven.legg@eb2bcom.com>
      Usage: other (matching rule)
      Specification: RFC XXXX
      Author/Change Controller: IESG

      Subject: Request for LDAP Descriptor Registration
      Descriptor (short name): definitions
      Object Identifier: 1.3.6.1.4.1.21472.5.21.0
      Person & email address to contact for further information:
        Steven Legg <steven.legg@eb2bcom.com>
      Usage: attribute type
      Specification: RFC XXXX
      Author/Change Controller: IESG

   The object identifiers have been assigned for use in this
   specification by xmled.org, under an arc assigned to xmled.org by
   IANA.

Appendix A. ASN.1 for XED Schema

   This appendix is normative.

   XED-SchemaOperationalAttributes
       { iso(1) identified-organization(3) dod(6)
         internet(1) private(4) enterprise(1)
         xmled(21472) ds(5) module(1) schema(0) }

   -- Copyright (C) The Internet Society (2005). This version of
   -- this ASN.1 module is part of RFC XXXX; see the RFC itself
   -- for full legal notices.

   DEFINITIONS
   RXER INSTRUCTIONS



Legg & Prager              Expires 29 May 2006                 [Page 12]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   AUTOMATIC TAGS
   EXTENSIBILITY IMPLIED ::= BEGIN

   IMPORTS
       ATTRIBUTE,
       MATCHING-RULE
           FROM InformationFramework
               { joint-iso-itu-t ds(5) module(1)
                   informationFramework(1) 4 }
       AnyType,
       AnyURI
           FROM AdditionalBasicDefinitions
               { iso(1) identified-organization(3) dod(6)
                 internet(1) private(4) enterprise(1)
                 xmled(21472) asn1(1) module(0) basic(0) }
       ;

   SchemaIdentity ::= AnyURI

   IdentifiedSchema ::= SEQUENCE {
       identifier  SchemaIdentity,
       document    SchemaDocument }

   SchemaDocument ::= CHOICE {
       module   [RXER:ELEMENT-REF {
                    namespace-name "http://xmled.info/ns/ASN.1",
                    local-name "module" }] AnyType,
       schema   [RXER:ELEMENT-REF {
                    namespace-name
                        "http://www.w3.org/2001/XMLSchema",
                    local-name "schema" }] AnyType,
       grammar  [RXER:ELEMENT-REF {
                    namespace-name
                        "http://relaxng.org/ns/structure/1.0",
                    local-name "grammar" }] AnyType,
       dtd      ExternalSubset }

   ExternalSubset ::= UTF8String (CONSTRAINED BY {
                          -- contains an external DTD subset,
                          -- i.e., text conforming to
                          -- the extSubset production of XML -- })

   schemaIdentityMatch MATCHING-RULE ::= {
       SYNTAX  SchemaIdentity
       ID      { iso(1) identified-organization(3) dod(6)
                 internet(1) private(4) enterprise(1)
                 xmled(21472) ds(5) matchingRule(13) 0 } }




Legg & Prager              Expires 29 May 2006                 [Page 13]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   definitions ATTRIBUTE ::= {
       WITH SYNTAX             IdentifiedSchema
       EQUALITY MATCHING RULE  schemaIdentityMatch
       USAGE                   directoryOperation
       ID   { iso(1) identified-organization(3) dod(6)
              internet(1) private(4) enterprise(1)
              xmled(21472) ds(5) schemaOperationalAttribute(21) 0 } }

   ENCODING-CONTROL RXER

       SCHEMA-IDENTITY
           "http://xmled.info/id/XED/1/SchemaOperationalAttributes"
       TARGET-NAMESPACE
           "http://xmled.info/ns/XED/1/SchemaOperationalAttributes"

   END

Appendix B. ASN.X for XED Schema

   This appendix is non-normative.

   <?xml version="1.0"?>
   <asn1:module
       xmlns:asn1="http://xmled.info/ns/ASN.1"
       xmlns:if="http://xmled.info/ns/X.500/4/InformationFramework"
       name="XED-SchemaOperationalAttributes"
       identifier="1.3.6.1.4.1.21472.5.1.0"
       schemaIdentity=
           "http://xmled.info/id/XED/1/SchemaOperationalAttributes"
       xmlns:soa=
           "http://xmled.info/ns/XED/1/SchemaOperationalAttributes"
       targetNamespace=
           "http://xmled.info/ns/XED/1/SchemaOperationalAttributes"
       extensibilityImplied="true">

    <annotation>
     Copyright (C) The Internet Society 2005. This version of
     this ASN.X module is part of RFC XXXX; see the RFC itself
     for full legal notices.
    </annotation>

    <import
        name="InformationFramework"
        identifier="2.5.1.1.4"
        schemaIdentity=
            "http://xmled.info/id/X.500/4/InformationFramework"
        namespace="http://xmled.info/ns/X.500/4/InformationFramework"/>




Legg & Prager              Expires 29 May 2006                 [Page 14]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


    <namedType name="SchemaIdentity" type="asn1:AnyURI"/>

    <namedType name="IdentifiedSchema">
     <type>
      <sequence>
       <element name="identifier" type="soa:SchemaIdentity"/>
       <element name="document" type="soa:SchemaDocument"/>
      </sequence>
     </type>
    </namedType>

    <namedType name="SchemaDocument">
     <type>
      <choice>
       <element ref="asn1:module"/>
       <element xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                ref="xsd:schema"/>
       <element xmlns:rng="http://relaxng.org/ns/structure/1.0"
                ref="rng:grammar"/>
       <element name="dtd" type="soa:ExternalSubset"/>
      </choice>
     </type>
    </namedType>

    <namedType name="ExternalSubset">
     <type>
      <constrained type="asn1:UTF8String">
       <constrainedBy/>
      </constrained>
     </type>
    </namedType>

    <namedObject name="schemaIdentityMatch" class="if:MATCHING-RULE">
     <object>
      <field name="AssertionType" type="soa:SchemaIdentity"/>
      <field name="id" literalValue="1.3.6.1.4.1.21472.5.13.0"/>
     </object>
    </namedObject>

    <namedObject name="definitions" class="if:ATTRIBUTE">
     <object>
      <field name="Type" type="soa:IdentifiedSchema"/>
      <field name="equality-match" object="soa:schemaIdentityMatch"/>
      <field name="usage" literalValue="directoryOperation"/>
      <field name="id" literalValue="1.3.6.1.4.1.21472.5.21.0"/>
     </object>
    </namedObject>




Legg & Prager              Expires 29 May 2006                 [Page 15]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   </asn1:module>

Appendix C. XML Schema for XED Schema

   This appendix is non-normative.

   <?xml version="1.0"?>
   <xsd:schema
       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
       xmlns:asn1="http://xmled.info/ns/ASN.1"
       xmlns:soa=
           "http://xmled.info/ns/XED/1/SchemaOperationalAttributes"
       targetNamespace=
           "http://xmled.info/ns/XED/1/SchemaOperationalAttributes"
       blockDefault="#all">

    <xsd:annotation>
     <xsd:documentation>
      Copyright (C) The Internet Society (2005). This version of
      this XML Schema is part of RFC XXXX; see the RFC itself
      for full legal notices.
     </xsd:documentation>
    </xsd:annotation>

    <xsd:import namespace="http://xmled.info/ns/ASN.1"/>

    <xsd:import namespace="http://www.w3.org/2001/XMLSchema"/>

    <xsd:import namespace="http://relaxng.org/ns/structure/1.0"/>

    <xsd:simpleType name="SchemaIdentity">
     <xsd:restriction base="asn1:AnyURI"/>
    </xsd:simpleType>

    <xsd:complexType name="IdentifiedSchema">
     <xsd:sequence>
      <xsd:element name="identifier" type="soa:SchemaIdentity"/>
      <xsd:element name="document" type="soa:SchemaDocument"/>
     </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="SchemaDocument">
     <xsd:choice>
      <xsd:element ref="asn1:module"/>
      <xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                   ref="xsd:schema"/>
      <xsd:element xmlns:rng="http://relaxng.org/ns/structure/1.0"
                   ref="rng:grammar"/>



Legg & Prager              Expires 29 May 2006                 [Page 16]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


      <xsd:element name="dtd" type="soa:ExternalSubset"/>
     </xsd:choice>
    </xsd:complexType>

    <xsd:simpleType name="ExternalSubset">
     <xsd:restriction base="asn1:UTF8String"/>
    </xsd:simpleType>

   </xsd:schema>

Normative References

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

   [ABNF]     Crocker, D., and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 4234, October 2005.

   [URI]      Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform
              Resource Identifiers (URI): Generic Syntax", STD 66, RFC
              3986, January 2005.

   [BCP64]    Zeilenga, K., "Internet Assigned Numbers Authority (IANA)
              Considerations for the Lightweight Directory Access
              Protocol (LDAP)", BCP 64, RFC 3383, September 2002.

   [MODELS]   Zeilenga, K., "LDAP: Directory Information Models",
              draft-ietf-ldapbis-models-xx.txt, a work in progress,
              February 2005.

   [SYNTAX]   Legg, S. and K. Dally, "Lightweight Directory Access
              Protocol (LDAP): Syntaxes and Matching Rules",
              draft-ietf-ldapbis-syntaxes-xx.txt, a work in progress,
              June 2005.

   [TRANSFER] Legg, S., "Lightweight Directory Access Protocol (LDAP):
              Transfer Encoding Options",
              draft-legg-ldap-transfer-xx.txt, a work in progress,
              November 2005.

   [ASN.X]    Legg, S., "Abstract Syntax Notation X (ASN.X)",
              draft-legg-xed-asd-xx.txt, a work in progress, November
              2005.

   [RXER]     Legg, S. and D. Prager, "Robust XML Encoding Rules (RXER)
              for Abstract Syntax Notation One (ASN.1)",
              draft-legg-xed-rxer-xx.txt, a work in progress, October
              2005.



Legg & Prager              Expires 29 May 2006                 [Page 17]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   [RXEREI]   Legg, S., "Encoding Instructions for the Robust XML
              Encoding Rules (RXER)", draft-legg-xed-rxer-ei-xx.txt, a
              work in progress, October 2005.

   [X.501]    ITU-T Recommendation X.501 (02/01) | ISO/IEC 9594-2:2001,
              Information technology - Open Systems Interconnection -
              The Directory: Models

   [X.680]    ITU-T Recommendation X.680 (07/02) | ISO/IEC 8824-1,
              Information technology - Abstract Syntax Notation One
              (ASN.1): Specification of basic notation.

   [X.680-1]  Draft Amendment 1 (to ITU-T Rec. X.680 | ISO/IEC 8824-1)
              Support for EXTENDED-XER.

   [XML10]    Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E. and
              F. Yergeau, "Extensible Markup Language (XML) 1.0 (Third
              Edition)", W3C Recommendation,
              http://www.w3.org/TR/2004/REC-xml-20040204, February 2004.

   [XML11]    Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E.,
              Yergeau, F., and J. Cowan, "Extensible Markup Language
              (XML) 1.1", W3C Recommendation,
              http://www.w3.org/TR/2004/REC-xml11-20040204, February
              2004.

   [ISET]     Cowan, J. and R. Tobin, "XML Information Set (Second
              Edition)", W3C Recommendation,
              http://www.w3.org/TR/2004/REC-xml-infoset-20040204,
              February 2004.

   [XSD1]     Thompson, H., Beech, D., Maloney, M. and N. Mendelsohn,
              "XML Schema Part 1: Structures Second Edition", W3C
              Recommendation, http://www.w3.org/TR/2004/REC-
              xmlschema-1-20041028/, October 2004.

   [RNG]      Clark, J. and M. Makoto, "RELAX NG Tutorial", OASIS
              Committee Specification, http://www.oasis-
              open.org/committees/relax-ng/tutorial-20011203.html,
              December 2001.

Informative References

   [XED]      Legg, S. and D. Prager, "The XML Enabled Directory",
              draft-legg-xed-roadmap-xx.txt, a work in progress,
              February 2005.

   [XLDAP]    Legg, S. and D. Prager, "The XML Enabled Directory:



Legg & Prager              Expires 29 May 2006                 [Page 18]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


              Protocols", draft-legg-xed-protocols-xx.txt, a work in
              progress, November 2005.

   [CXSD]     Legg, S. and D. Prager, "Translation of ASN.1
              Specifications into XML Schema",
              draft-legg-xed-xsd-xx.txt, a work in progress, to be
              published.

   [XSD0]     Fallside, D., and P. Walmsley, "XML Schema Part 0: Primer
              Second Edition", W3C Recommendation,
              http://www.w3.org/TR/2004/REC-xmlschema-0-20041028/,
              October 2004.

Authors' Addresses

   Dr. Steven Legg
   eB2Bcom
   Suite 3, Woodhouse Corporate Centre
   935 Station Street
   Box Hill North, Victoria 3129
   AUSTRALIA

   Phone: +61 3 9896 7830
     Fax: +61 3 9896 7801
   EMail: steven.legg@eb2bcom.com

   Dr. Daniel Prager

   EMail: dan@layabout.net

Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   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 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




Legg & Prager              Expires 29 May 2006                 [Page 19]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   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.

Changes in Draft 01

   An LDAP-specific encoding for the Identified DTD syntax has been
   nominated.

   The Directory XML Encoding Rules (DXER) have been renamed to the
   Robust XML Encoding Rules (RXER).

Changes in Draft 02

   The content of the definitions component of the IdentifiedDTD ASN.1
   type has been changed from an XML prolog to an XML external DTD
   subset.  An external DTD subset is more general than the internal DTD
   subset in an XML prolog, and is also more likely to be the form of a
   DTD from which directory attribute syntaxes might be defined.

   In examples, the root element in "transfer-rxer" encoded LDAP
   attribute values has been changed from <item> to <value> in line with
   the NamedType definitions in the latest draft for the LDAP protocol
   (draft-ietf-ldapbis-protocol-24.txt).

Changes in Draft 03

   The declarations and doctypedecls attributes have been replaced by
   the definitions attribute.




Legg & Prager              Expires 29 May 2006                 [Page 20]

INTERNET-DRAFT     XED: Schema Operational Attributes  November 29, 2005


   The Identified DTD syntax has been removed.  The Identified Schema
   syntax has been revised and now covers DTDs.

   The OBJECT IDENTIFIERs assigned throughout this document have been
   replaced.

   ASN.1 Schema has been renamed to Abstract Syntax Notation X (ASN.X)
   and the <asn1:schema> element has been renamed to <asn1:module>.











































Legg & Prager              Expires 29 May 2006                 [Page 21]


PAFTECH AB 2003-20262026-04-24 05:47:31