Internet Draft                                              C. Apple 
   Document: draft-apple-schema-metadata-00.txt    DSI Consulting, Inc. 
   Expires: December 2003                                     June 2003 
    
    
                     Directory Schema Listing Metadata 
    
    
Status of this Memo 
 
    
   This document is an Internet-Draft and is in full conformance with 
   all provisions of Section 10 of [RFC2026].  
    
   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. 
 
    
Abstract 
    
    
   This memo defines a MIME directory profile for content transfer and 
   encoding of metadata elements used for cataloging schema listings in 
   a directory schema listing service. 
    
    
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]. 





 
 
Apple                  Expires - December 2003               [Page 1] 
INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
Table of Contents 
    
   1. Introduction...................................................3 
      1.1 Terms and Definitions......................................3 
   2. The "schema-metadata-0" MIME Directory Profile Registration....4 
   3. MIME Directory Type Registrations..............................6 
      3.1 listingName................................................6 
      3.2 listingTitle...............................................7 
      3.3 listingUse.................................................8 
      3.4 specFile...................................................8 
      3.5 relatedTo..................................................9 
      3.6 contactLanguage...........................................11 
      3.7 contactName...............................................11 
      3.8 contactEmail..............................................12 
      3.9 contactPhone..............................................13 
      3.10 contactAddress...........................................13 
      3.11 authLanguage.............................................14 
      3.12 authName.................................................15 
      3.13 authEmail................................................15 
      3.14 authPhone................................................16 
      3.15 authAddress..............................................17 
      3.16 specURL..................................................18 
      3.17 security.................................................18 
      3.18 created..................................................19 
      3.19 moreInfo.................................................20 
      3.20 caveat...................................................21 
      3.21 listingComments..........................................22 
      3.22 schemaPak................................................22 
      3.23 pakMember................................................23 
   4. Examples......................................................24 
      4.1 Schema Unit Listing Request Use of Profile................24 
      4.2 Published Schema Unit Listing Use of Profile..............25 
      4.3 Schema Pak Listing Request Use of Profile.................26 
      4.4 Published Schema Pak Listing Use of Profile...............27 
   5. Security Considerations.......................................27 
   6. References....................................................28 
      6.1 Normative References......................................28 
      6.2 Informative References....................................29 
   7. Acknowledgments...............................................29 
   8. Author's Address..............................................30 
    







 
 
Apple                  Expires - December 2003               [Page 2] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
1. Introduction 
    
    
   The fastest route to interoperable directory services is through 
   standard object classes and attribute types. There is a growing 
   number of places where schema for Internet Directory Services and 
   Internet Operations are being defined, with varying degrees of 
   documentation.  This plethora of schema is unavoidable in the light 
   of the needs of different service communities, but it makes it 
   difficult for directory service builders to find and make use of an 
   existing schema that will serve their needs and increase 
   interoperability with other systems. A listing service providing a 
   single point of discovery for directory service schema will promote 
   schema reuse, reduce duplication of effort, and thus promote 
   directory service interoperability. Metadata will be used to catalog 
   and distinguish schema listings in this service. This document 
   defines a MIME directory [RFC2927] profile for metadata content 
   transfer and encoding. 
    
    
1.1 Terms and Definitions 
    
    
   Information Object - a descriptive abstraction of some real-world 
   object 
    
   Object Attribute - a descriptive property of an information object; 
   typically, object attributes are defined in terms of semantic and 
   syntactic definitions 
    
   Schema - a collection of definitions for related information objects 
    
   Schema Unit - a related or grouped set of object attributes that form 
   a discrete unit within the context of a schema for a particular 
   protocol; examples include an LDAP object class or a WHOIS++ template 
    
   Schema Pak - a related or grouped set of schema units that 
   collectively specify a schema associated with a particular protocol; 
   an example of a schema pak is the set of LDAP object classes 
   specified in [RFC2256] 
    
   Metadata - characteristics that differentiate one schema unit or 
   schema pak from another; used to catalog listing service content; 
   structured using a profile of [RFC2927]; also contains references to 
   files stored within and outside of a listing repository 
    
   Schema Unit Content - a formal specification of a schema unit using a 
   profile of [RFC2927] 
 
 
Apple                  Expires - December 2003               [Page 3] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   Schema Unit Listing - the combination of a single schema unit content 
   file intended for use within the context of a particular protocol an 
   a file containing metadata describing the schema unit specified 
   within that schema unit content file 
    
   Schema Pak Listing - a single metadata file containing information 
   describing and referring to a set of related or grouped schema unit 
   content files 
    
   Repository - a database in which listings are stored 
    
   Listing Request - a proposed schema unit listing or schema pak 
   listing formatted using [MIME] constructs that is submitted for 
   consideration as a listing to be published in a repository 
    
   Operator - an organization that administers and maintains a 
   repository 
    
   Primary Repository - the repository that masters the schema listings 
   database 
    
   Shadow Repository - a repository that mirrors the primary repository 
    
   Contact Person - the name of the individual who holds the authority 
   to update a listing and who should be contacted if questions or 
   concerns arise related to a listing or listing request 
    
   Listing Authority Contact - the name of the individual who holds 
   authority to replace a contact person; can be either the contact 
   person for a listing or an alternate contact within the organization 
   to which the contact person belongs (this allows one person 
   organizations to list schema) 
    
   The terms for specifying requirement level defined in [RFC2119] are 
   used in this document. 
    
    
2. The "schema-metadata-0" MIME Directory Profile Registration 
    
    
   This profile is identified by the following registration template 
   information. 
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME profile "schema-
   metadata-0" 
    
 
 
Apple                  Expires - December 2003               [Page 4] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   Profile Name: schema-metadata-0 
    
   Profile Purpose: To represent metadata for a schema listing stored in 
   the repository or a schema listing request under community review. 
    
   Profile Types: listingName, listingTitle, listingUse, specFile, 
   relatedTo, contactLanguage, contactName, contactEmail, contactPhone, 
   contactAddress, authLanguage, authName, authEmail, authPhone, 
   authAddress, specURL, security, created, moreInfo, caveat, 
   listingComments, schemaPak, pakMember 
    
   Profile Special Notes: 
    
   The charset parameter MUST be present in the MIME content header and 
   the value of this parameter MUST be "utf-8". 
    
   Neither the "BEGIN", "END", nor "SOURCE" type is used in the contents 
   of this profile. 
    
   Type grouping is not used in the contents of this profile. 
    
   Each MIME Directory Type Registration that follows in section 3 of 
   this document includes a specification of whether or not a particular 
   type is constrained to be single-valued or permitted to be multi-
   valued. Types that are permitted to be multi-valued MUST have at 
   least one value, unless otherwise noted in the 'Type special notes' 
   component of a type definition. 
    
   Implementors should note that there will likely be values of profile 
   types in some contents much longer than 76 bytes. In addition, there 
   may be non-ASCII characters and embedded CRLFs inside of values, 
   which could require either quoting of the value or use of a content 
   transfer encoding. 
    
   The following types MUST be included by schema writers in schema unit 
   listing requests: listingName, listingTitle, listingUse, specFile, 
   contactLanguage, contactName, contactEmail, contactPhone, 
   contactAddress, authLanguage, authName, authEmail, authPhone, 
   authAddress, and security. 
    
   The following types MUST be included by schema writers in schema pak 
   listing requests: listingName, listingTitle, listingUse, specFile, 
   contactLanguage, contactName, contactEmail, contactPhone, 
   contactAddress, authLanguage, authName, authEmail, authPhone, 
   authAddress, and security. 
    
   The 'listingName' type value MUST be created by the primary listing 
   repository operator. 
    
 
 
Apple                  Expires - December 2003               [Page 5] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   The 'relatedTo' type value MUST be provided by the schema writer as a 
   part of a listing request if the listing proposed in the request has 
   a relationship to published listings and/or other listing requests 
   being reviewed. 
    
   Values for the following types MUST be provided by the primary schema 
   listing repository operator and MUST NOT be accepted from the schema 
   writer:  specURL, created, listingComments, and pakMember. 
    
   The schemaPak type value MAY be provided by either the primary schema 
   listing repository operator or the schema writer when required. 
    
   The moreInfo type value is OPTIONAL, but MUST be provided by the 
   schema writer. if this metadata element is to be included in a 
   published listing. 
    
   Intended Usage: COMMON 
    
    
3. MIME Directory Type Registrations 
    
    
   This document defines all types use in the schema-metadata-0 profile. 
   These types are intended for use in the "schema-metadata-0" profile, 
   although they may be applicable to other profiles defined in the 
   future. 
    
    
3.1 listingName 
 
 
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type listingName 
    
   Type name: listingName 
    
   Type purpose: To represent a globally unique identifier for the 
   listing name. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    name = base-component "." sequence "." version 
    
    base-component = "base" / oid 
    
 
 
Apple                  Expires - December 2003               [Page 6] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    oid = oid-component *("." oid-component) 
    
    oid-component = 1*DIGIT 
    
    DIGIT = <any ASCII decimal digit (0x30 - 0x39)> 
    
    sequence = NZDIGIT *DIGIT 
    
    NZDIGIT = <any DIGIT except "0" (0x30)> 
    
    version = sequence 
    
   Type special notes: 
    
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    For published listings, a value of this type is an OID constructed 
    by the primary listing repository operator based on a root OID 
    administered by that operator, a listing sequence number generated 
    by that operator, a listing version number assigned by that 
    operator, and a file type indicator. 
    
    For listing requests, a place holder for the root OID is used in 
    place of the actual base OID administered by the primary listing 
    repository operator. This place holder is simply the text string 
    "base" as indicated in the <base-component> rule above. 
    
    
3.2 listingTitle 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type listingTitle 
    
   Type name: listingTitle 
    
   Type purpose: To represent a real world title of a listed schema unit 
   or schema pak. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
 
 
Apple                  Expires - December 2003               [Page 7] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST be used with this type. 
    
    A value of this type MAY contain local or native version numbers or 
    other version indicators for listed schema. Such schema version 
    information MUST be treated as opaque by implementers. 
    
    
3.3 listingUse 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type listingUse 
    
   Type name: listingUse 
    
   Type purpose: To represent a statement of intended use for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST be used with this type. 
    
    A value of this type is an in-line text description of the intended   
    use of a listing and MAY include embedded CRLF characters. 
    
    
3.4 specFile 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type specFile 
    
   Type name: specFile 
    
 
 
Apple                  Expires - December 2003               [Page 8] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   Type purpose: To represent a file name in the schema listing 
   repository for a schema unit content constructed using an appropriate 
   profile of [RFC2927]. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    fname = <a file name as specified in [FILESYN]> 
    
       ; all [FILESYN] <type> values except "meta-unit" and "0" 
       ; MAY be used to construct <fname> values 
    
   Type special notes: 
    
    When used in schema unit listings and schema unit listing requests, 
    this type MUST be single-valued. 
    
    When used in schema pak listings and schema pak listing requests, 
    this type MUST be multi-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    Profiles will be defined in other documents. Each of these profiles  
    will be identifiable by a short text string representative of the  
    profile name. 
    
    
3.5 relatedTo 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type relatedTo 
    
   Type name: relatedTo 
    
   Type purpose: To represent an indication of a relationship of a 
   published listing or listing request with another published listing 
   or listing request. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    related = md-filename *SPACE "$" *SPACE related-option 
    
 
 
Apple                  Expires - December 2003               [Page 9] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    md-filename = <a metadata file name as specified in [FILESYN]> 
    
    related-option = "obsoletes" / "obsoleted-by" / "updates" / 
                     "inherits" / vendor-option 
    
    vendor-option = ("x-" / "X-") vendor-name "-" 
                    vendor-specific-relationship 
    
    vendor-name = 1*TOKEN 
    
    vendor-specific-relationship = 1*TOKEN 
    
    TOKEN = <any CHAR except specials, SPACE, CRLF, CTL, and "-"> 
    
    CHAR = <any ASCII character (0x00 - 0x7f)> 
    
    specials = "(" / ")" / "<" / ">" / "@"   ; MUST be in quoted- 
             / "," / ";" / ":" / "\" / <">   ; string, to use 
             / "." / "[" / "]"               ; within a word 
    
    <"> = <an ASCII quote mark (0x22)> 
    
    SPACE = <ASCII SP, space (0x20)> 
    
    CRLF = CR LF 
    
    CR = <ASCII CR, carriage return (0x0d)> 
    
    LF = <ASCII LF, line feed (0x0a)> 
    
    CTL = <any ASCII control character (0x00 - 0x1f) and DEL (0x7f)> 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    If a listing is related to another listing, this type is REQUIRED, 
    otherwise the use of this type is OPTIONAL. 
    
    A language parameter MUST NOT be used with this type. 
    
    This type is used to indicate relationships between published 
    listings and listing requests as well as between one or more listing 
    requests being submitted for review in parallel. Examples of such 
    relationships include deprecation, revision, inheritance, and those 
    specific to a particular vendor. 
    
    

 
 
Apple                  Expires - December 2003              [Page 10] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
3.6 contactLanguage 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type contactLanguage 
    
   Type name: contactLanguage 
    
   Type purpose: To represent a language understood by the contact 
   person, organization, or role for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    c-lang = <a language tag as defined in [RFC1766]> 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    
3.7 contactName 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type contactName 
    
   Type name: contactName 
    
   Type purpose: To represent the name of the contact person, 
   organization, or role for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using 
   the ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
 
 
Apple                  Expires - December 2003              [Page 11] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    A language parameter MUST NOT be used with this type. 
    
    
3.8 contactEmail 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type contactEmail 
    
   Type name: contactEmail 
    
   Type purpose: To represent the electronic mail address of the contact 
   person, organization, or role for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    c-email = local-part "@" domain-part 
    
    domain-part = sub-domain *("." sub-domain) 
    
    sub-domain = 1*<any CHAR, except specials, SPACE, CRLF, and CTL> 
    
    CHAR = <any ASCII character (0x00 - 0x7f)> 
    
    specials = "(" / ")" / "<" / ">" / "@"   ; MUST be in quoted- 
             / "," / ";" / ":" / "\" / <">   ; string, to use 
             / "." / "[" / "]"               ; within a word 
    
    <"> = <an ASCII quote mark (0x22)> 
    
    SPACE = <ASCII SP, space (0x20)> 
    
    CRLF = CR LF 
    
    CR = <ASCII CR, carriage return (0x0d)> 
    
    LF = <ASCII LF, line feed (0x0a)> 
    
    CTL = <any ASCII control character (0x00 - 0x1f) and DEL (0x7f)> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
 
 
Apple                  Expires - December 2003              [Page 12] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
    
3.9 contactPhone 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type contactPhone 
    
   Type name: contactPhone 
    
   Type purpose: To represent the voice telephone number of the contact 
   person, organization, or role for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    c-phone = 1*<any CHAR, except CTL, CRLF> 
    
       ; MUST use full international form (e.g., +1 908 582 2409) 
       ; as specified in [E.123] 
    
    CHAR = <any ASCII character (0x00 - 0x7f)> 
    
    CRLF = CR LF 
    
    CR = <ASCII CR, carriage return (0x0d)> 
    
    LF = <ASCII LF, line feed (0x0a)> 
    
    CTL = <any ASCII control character (0x00 - 0x1f) and DEL (0x7f)> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    
3.10 contactAddress 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type contactAddress 
    
   Type name: contactAddress 
 
 
Apple                  Expires - December 2003              [Page 13] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   Type purpose: To represent the postal address of the contact person, 
   organization, or role for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    c-addr = postal-string *5(*SPACE "$" *SPACE postal-string) 
    
    postal-string = 1*<any character, except "$", encoded according to 
                       [RFC2044]> 
    
    SPACE = <ASCII SP, space (0x20)> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    
3.11 authLanguage 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type authLanguage 
    
   Type name: authLanguage 
    
   Type purpose: To represent the language understood by the listing 
   authority contact for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    lac-lang = <a language tag defined in [RFC1766]> 
    
   Type special notes: 
    
    This type MAY be multi-valued 
    
    A language parameter MUST NOT be used with this type. 
    

 
 
Apple                  Expires - December 2003              [Page 14] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
3.12 authName 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type authName 
    
   Type name: authName 
    
   Type purpose: To represent the name of the listing authority contact 
   for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    The value of this type MAY be identical to the value of the 
    'contactName' type defined above. 
    
    
3.13 authEmail 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type authEmail 
    
   Type name: authEmail 
    
   Type purpose: To represent the electronic mail address of the listing 
   authority contact for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    c-email = local-part "@" domain-part 
    
    domain-part = sub-domain *("." sub-domain) 
 
 
Apple                  Expires - December 2003              [Page 15] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
    sub-domain = 1*<any CHAR, except specials, SPACE, CRLF, and CTL> 
    
    CHAR = <any ASCII character (0x00 - 0x7f)> 
    
    specials = "(" / ")" / "<" / ">" / "@"   ; MUST be in quoted- 
             / "," / ";" / ":" / "\" / <">   ; string, to use 
             / "." / "[" / "]"               ; within a word 
    
    <"> = <an ASCII quote mark (0x22)> 
    
    SPACE = <ASCII SP, space (0x20)> 
    
    CRLF = CR LF 
    
    CR = <ASCII CR, carriage return (0x0d)> 
    
    LF = <ASCII LF, line feed (0x0a)> 
    
    CTL = <any ASCII control character (0x00 - 0x1f) and DEL (0x7f)> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    The value of this type MAY be identical to the value of the 
    'contactEmail' type defined above. 
    
    
3.14 authPhone 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type authPhone 
    
   Type name: authPhone 
    
   Type purpose: To represent the voice telephone number of the listing 
   authority contact for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    lac-phone = 1*<any CHAR, except CTL, CRLF> 
 
 
Apple                  Expires - December 2003              [Page 16] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
       ; MUST use full international form (e.g., +1 908 582 2409) 
       ; as specified in [E.123] 
    
    CHAR = <any ASCII character (0x00 - 0x7f)> 
    
    CRLF = CR LF 
    
    CR = <ASCII CR, carriage return (0x0d)> 
    
    LF = <ASCII LF, line feed (0x0a)> 
    
    CTL = <any ASCII control character (0x00 - 0x1f) and DEL (0x7f)> 
    
   Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    The value of this type MAY be identical to the value of the  
    'contactPhone' type defined above. 
    
    
3.15 authAddress 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type authAddress 
    
   Type name: authAddress 
    
   Type purpose: To represent the postal address of the listing 
   authority contact for a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    lac-addr = postal-string *5(*SPACE "$" *SPACE postal-string) 
    
    postal-string = 1*<any character, except "$", encoded according to 
                       [RFC2044]> 
    
    SPACE = <ASCII SP, space (0x20)> 
    
   Type special notes: 
    
 
 
Apple                  Expires - December 2003              [Page 17] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    The value of this type MAY be identical to the value of the 
    'contactAddr' type defined above. 
    
3.16 specURL 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type specURL 
    
   Type name: specURL 
    
   Type purpose: To represent a URL referring to a single schema unit 
   content file. 
    
   Type encoding: 8bit 
    
   Type valuetype: uri, formatted as a URL [RFC1738]. 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    
3.17 security 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type security 
    
   Type name: security 
    
   Type purpose: To represent a description of security considerations 
   for a single schema unit or schema pak. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
    
 
 
Apple                  Expires - December 2003              [Page 18] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   Type special notes: 
    
    This type MAY be multi-valued if it is used within a schema unit 
    listing metadata file. 
    
    This type MUST have at least two values if present in a schema pak 
    listing file. One of these values MUST be a security considerations 
    description for the schema pak itself. The other value MUST consist 
    of the following text: 
    
    Users of this schema pak listing should read the security type 
    values contained in the metadata file associated with each schema 
    unit content file referenced by a pakMember type value. 
    
    A language parameter MUST be used with this type. 
    
    A value of this type is an in-line text description of security 
    considerations and MAY include embedded CRLF characters. 
    
    
3.18 created 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type created 
    
   Type name: created 
    
   Type purpose: To represent the date and time at which a listing was 
   published. 
    
   Type encoding: 8bit 
    
   Type valuetype: date-time, with the following syntax (specified using 
   the ABNF in [RFC2234]): 
    
    created = date "T" time "Z" 
    
    date = 4DIGIT "-" 2DIGIT "-" 2DIGIT 
        
       ; year-month-day 
       ; e.g., 1997-08-27 
    
    time = 2DIGIT ":" 2DIGIT ":" 2DIGIT 
    
       ; hh:mm:ss 
       ; e.g., 00:00:00 thru 23:59:59 
       ; MUST be based on GMT 
 
 
Apple                  Expires - December 2003              [Page 19] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
    DIGIT = <any ASCII decimal digit (0x30 - 0x39)> 
    
    Type special notes: 
    
    This type MUST be single-valued. 
    
    A language parameter MUST NOT be used with this type. 
    
    
3.19 moreInfo 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type moreInfo 
    
   Type name: moreInfo 
    
   Type purpose: To represent a labeled reference to external content 
   (not stored in the schema listing repository) related to a listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    more = uri *SPACE "(" label ")" 
    
       ; MAY be multi-valued or single-valued 
    
    uri = <a URI as specified in [RFC1738]> 
    
       ; in this case the URI is constrained to 
       ; be a URL as specified in [RFC1738] 
    
    label = option [*SPACE "$" *SPACE checksum] 
    
       ; only one option is allowed per instance 
       ; of this multi-valued metadata element 
    
    option = "opaque-schema" / "copyright" / "licensing" / "general" 
           / "image" 
    
       ; this set of options is intended for use in the initial release 
       ; of the schema listing service additional options may be 
       ; defined in other documents 
       ; "opaque-schema" signifies that a file containing 
       ; a [RFC2927]-based schema unit content not currently 
 
 
Apple                  Expires - December 2003              [Page 20] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
       ; supported by the listing service or other syntax 
       ; specification for a schema unit is being referenced 
    
    checksum = <an MD5 checksum [RFC1321] of the information 
                retrievable via the URL value of <uri>> 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST be used with this type. 
    
    The use of this type is REQUIRED if a schema writer wishes to 
    include references to external content related to a listing. 
    Otherwise, this type MUST NOT be used in forming listing requests or 
    published listings. The rationale for including these external 
    references MAY be related to extensive copyright or right-to-use 
    statements, a requirement external to the schema listing service for 
    vendor branding of a listed schema, or a schema specification of a 
    form not expressible using a MIME directory [RFC2927] profile  
    currently supported by the schema listing service. 
    
    
3.20 caveat 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type caveat 
    
   Type name: caveat 
    
   Type purpose: To represent a caveat explaining that content obtained 
   by following external references to information not stored in the 
   schema listing repository is outside of the control of the 
   repository. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, consisting of the following in-line text value: 
    
    Information obtained by following external content 
    references expressed using the moreInfo type are 
    outside of the control of the schema listing service 
    operators. Users of this information should be aware 
    that it is possible for this information to change 
    after the referencing listing has been 
    published. 
    
 
 
Apple                  Expires - December 2003              [Page 21] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST be used with this type. 
    
    The use of this type is REQUIRED if a schema writer wishes to 
    include references to external content related to a listing. 
    Otherwise, this type MUST NOT be used in forming listing requests or 
    published listings. 
    
    
3.21 listingComments 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type listingComments 
    
   Type name: listingComments 
    
   Type purpose: To represent comments which will be attached to a 
   listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    utf8-text = 1*<any character encoded according to [RFC2044]> 
    
   Type special notes: 
    
    This type MAY be multi-valued. 
    
    A language parameter MUST be used with this type. 
    
    The use of this type is REQUIRED if during review of a listing 
    request, the primary listing repository operator is asked by the 
    reviewers to include particular comments or generic caveats with a 
    listing prior to publication. 
    
    Values of this type are in-line text comments or generic caveats 
    associated with a schema listing and MAY include embedded CRLF 
    characters. 
    
    
3.22 schemaPak 
    
 
 
Apple                  Expires - December 2003              [Page 22] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type schemaPak 
    
   Type name: schemaPak 
    
   Type purpose: To represent a reference to a schema pak listing of 
   which a schema unit content file is a member. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    pak-ref = uri *SPACE "(" label ")" ; MAY be multi-valued or 
                                       ; single-valued 
    
    uri = <a URI as specified in [RFC1630]> ; the URI is constrained 
                                            ; to be a URL as 
                                            ; specified in [RFC1738] 
                                            ; and corresponds to a 
                                            ; pak listing file 
    
    label = "ldap" / "whoispp" / "rwhois" / "whois" 
    
   Type Special Notes: 
    
    Only one <label> value is allowed across all instances of this 
    metadata element within a single schema unit metadata file. 
    
    The set of <label> values specified above is intended for use in the 
    initial release of the schema listing service. Additional values may 
    be defined in other documents; this document will be updated to 
    reflect additions to the supported set. 
    
    This element MUST ONLY be used in schema unit listing metadata 
    files. 
    
    
3.23 pakMember 
    
    
   To: ietf-mime-direct@imc.org 
    
   Subject: Registration of text/directory MIME type pakMember 
    
   Type name: pakMember 
    
 
 
Apple                  Expires - December 2003              [Page 23] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   Type purpose: To represent a reference to a single schema unit 
   content file associated with a schema pak listing. 
    
   Type encoding: 8bit 
    
   Type valuetype: text, with the following syntax (specified using the 
   ABNF in [RFC2234]): 
    
    member-ref = uri *SPACE "(" label ")" ; MAY be multi-valued or 
                                          ; single-valued 
    
    uri = <a URI as specified in [RFC1630]> ; the URI is constrained 
                                            ; to be a URL as 
                                            ; specified in [RFC1738] 
                                            ; and refers to a schema 
                                            ; unit content file 
    
    
    label = "ldap" / "whoispp" / "rwhois" / "whois" 
    
   Type Special Notes: 
    
    A schema pak MUST consist of more than one schema unit. Therefore, 
    this element MUST be multi-valued 
    
    A schema pak listing MUST only contain member references for a 
    single protocol.  Therefore, only one <label> value is allowed per 
    schema pak listing 
    
    This element MUST ONLY be used in schema pak listings. 
    
    The value of a <uri> MUST NOT refer to another schema pak listing. 
    
    
4. Examples 
 
 
4.1 Schema Unit Listing Request Use of Profile 
    
    
   From: Whomever@wherever.com 
   To: Someone@somewhere.com 
   Subject: schema unit listing request 
   MIME-Version: 1.0 
   Message-Id: <ids1@wherever.com> 
   Content-Type: text/directory; 
                 profile="schema-metadata-0"; 
                 charset="utf-8" 
   Content-Transfer-Encoding: Quoted-Printable 
 
 
Apple                  Expires - December 2003              [Page 24] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   listingName: 1.1.2 
   listingTitle;language=en: Some Schema Title V1.0 
   listingUse;language=en: Intended as an example. 
   specFile: 1.2.ldap 
   contactLanguage: en 
   contactName: Whom Ever 
   contactEmail: Whomever@wherever.com 
   contactPhone: +1 908 555 1212 
   contactAddress: Some Street $ Some City $ Some State $ Some Country 
   authLanguage: en 
   authName: Whom Ever 
   authEmail: Whomever@wherever.com 
   authPhone: +1 908 555 1212 
   authAddress: Some Street $ Some City $ Some State $ Some Country 
   moreInfo: http://www.wherever.com/schema/ 
    (opaque-schema $ <MD5 checksum>) 
   caveat;language=en: Information obtained by following 
     external content references expressed using the 
     moreInfo type are outside of the control of the 
     schema listing service operators. Users of this 
     information should be aware that it is possible 
     for this information to change after the referencing 
     listing has been published. 
   security;language=en: A security analysis was not performed. 
   relatedTo: 1.1.meta-unit $ obsoletes 
    
    
4.2 Published Schema Unit Listing Use of Profile 
    
    
   Content-Type: text/directory; 
                 profile="schema-metadata-0"; 
                 charset="utf-8" 
   Content-Transfer-Encoding: Quoted-Printable 
    
   listingName: 1.1.2 
   listingTitle;language=en: Some Schema Title V1.0 
   listingUse;language=en: Intended as an example. 
   specFile: 1.2.ldap 
   contactLanguage: en 
   contactName: Whom Ever 
   contactEmail: Whomever@wherever.com 
   contactPhone: +1 908 555 1212 
   contactAddress: Some Street $ Some City $ Some State $ Some Country 
   authLanguage: en 
   authName: Whom Ever 
   authEmail: Whomever@wherever.com 
   authPhone: +1 908 555 1212 
 
 
Apple                  Expires - December 2003              [Page 25] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   authAddress: Some Street $ Some City $ Some State $ Some Country 
   moreInfo: http://www.wherever.com/schema/ 
    (opaque-schema $ <MD5 checksum>) 
   caveat;language=en: Information obtained by following 
     external content references expressed using the 
     moreInfo type are outside of the control of the 
     schema listing service operators. Users of this 
     information should be aware that it is possible 
     for this information to change after the referencing 
     listing has been published. 
   relatedTo: 1.1.meta-unit $ obsoletes 
   security;language=en: A security analysis was not performed. 
   specURL: ftp://ftp.somewhere.com/schema/1.2.ldap 
   created: 1997-11-17T15:21:00Z 
   listingComments: This listing is only an example. 
    
    
4.3 Schema Pak Listing Request Use of Profile 
    
    
   From: Whomever@wherever.com 
   To: Someone@somewhere.com 
   Subject: schema pak listing request 
   MIME-Version: 1.0 
   Message-Id: <ids1@wherever.com> 
   Content-Type: text/directory; 
                 profile="schema-metadata-0"; 
                 charset="utf-8" 
   Content-Transfer-Encoding: Quoted-Printable 
    
   listingName: 1.4.1 
   listingTitle;language=en: Some Schema Title V1.0 
   listingUse;language=en: Intended as an example. 
   contactLanguage: en 
   contactName: Whom Ever 
   contactEmail: Whomever@wherever.com 
   contactPhone: +1 908 555 1212 
   contactAddress: Some Street $ Some City $ Some State $ Some Country 
   authLanguage: en 
   authName: Whom Ever 
   authEmail: Whomever@wherever.com 
   authPhone: +1 908 555 1212 
   authAddress: Some Street $ Some City $ Some State $ Some Country 
   security;language=en: A security analysis was not performed. 
   security;language=en: Users of this schema pak listing should 
     read the security type values contained in the metadata file 
     associated with each schema unit content file referenced by a 
     pakMember type value. 
   specFile: 1.2.ldap 
 
 
Apple                  Expires - December 2003              [Page 26] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   specFile: 2.1.ldap 
   specFile: 3.1.ldap 
    
    
4.4 Published Schema Pak Listing Use of Profile 
    
    
   Content-Type: text/directory; 
                 profile="schema-metadata-0"; 
                 charset="utf-8" 
   Content-Transfer-Encoding: Quoted-Printable 
    
   listingName: 1.4.1 
   listingTitle;language=en: Some Schema Title V1.0 
   listingUse;language=en: Intended as an example. 
   contactLanguage: en 
   contactName: Whom Ever 
   contactEmail: Whomever@wherever.com 
   contactPhone: +1 908 555 1212 
   contactAddress: Some Street $ Some City $ Some State $ Some Country 
   authLanguage: en 
   authName: Whom Ever 
   authEmail: Whomever@wherever.com 
   authPhone: +1 908 555 1212 
   authAddress: Some Street $ Some City $ Some State $ Some Country 
   security;language=en: A security analysis was not performed. 
   security;language=en: Users of this schema pak listing should 
     read the security type values contained in the metadata file 
     associated with each schema unit content file referenced by a 
     pakMember type value. 
   specFile: 1.2.ldap 
   pakMember: http://www.whereever.com/schema/1.2.ldap (ldap) 
   specFile: 2.1.ldap 
   pakMember: http://www.whereever.com/schema/2.1.ldap (ldap) 
   specFile: 3.1.ldap 
   pakMember: http://www.whereever.com/schema/3.1.ldap (ldap) 
    
              
5. Security Considerations 
    
    
   The text/directory profile defined in this document does not provide 
   any method for carrying authentication information. 
    
   The text/directory profile defined in this document allows content 
   external to any schema listing service repository to be referenced in 
   a listing and includes an MD5-based fingerprint of the referenced 
   content itself. Users of the schema listing service SHOULD take steps 
   to verify that this external information has not changed since 
 
 
Apple                  Expires - December 2003              [Page 27] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
   listing publication. Users should also be aware that such external 
   content is outside of the control of the schema listing service 
   operators. 
    
   A MIME body part containing contents structured according to the 
   text/directory profile defined in this document MAY be incorporated 
   in a digitally signed MIME content, which can be used to verify that 
   the body part has not been modified during transit. If a signer has 
   been certified by a trusted third party, it may also be possible to 
   verify the origin of the content. 
 
    
6. References 
    
    
6.1 Normative References 
    
    
   [E.123] ITU-T, "Telephone Network and ISDN Operation, Numbering, 
   Routing, and Mobile Service - Notation for National and International 
   Telephone Numbers", ITU-T Recommendation E.123, Fascicle II.2, Blue 
   Book, 1993. 
    
   [FILESYN] C. Apple, "Directory Schema Listing File Name Syntax", 
   INTERNET-DRAFT <draft-apple-schema-reg-file-00.txt>, June 2003. 
    
   [LISTRQMT] C. Apple, "Requirements for the Initial Release of a 
   Directory Schema Listing Service", INTERNET-DRAFT <draft-apple- 
   schema-reg-rqmts-00.txt>, June 2003. 
    
   [MIME] [RFC2045], [RFC2046], and [RFC2047]. 
    
   [REGPROC] C. Apple and M. Mealling, "Directory Schema Listing 
   Procedures", <draft-apple-schema-reg-proc-00.txt>. June 2003. 
 
   [RFC1321] R. Rivest, "The MD5 Message-Digest Algorithm", RFC 1321, 
   April 1992. 
    
   [RFC1630] T. Berners-Lee, "Universal Resource Identifiers in WWW", 
   RFC 1630, June 1994. 
    
   [RFC1738] T. Berners-Lee, L. Masinter, M. McCahill, "Uniform Resource 
   Locators", RFC 1738, December 1994. 
    
   [RFC1766] H. Alvestrand, "Tags for the Identification of Languages", 
   RFC 1766, March 1995. 
    
   [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate 
   Requirement Level", BCP 14, RFC 2119, March 1997. 
 
 
Apple                  Expires - December 2003              [Page 28] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   [RFC2044] F. Yergeau, "UTF-8, a transformation format of Unicode and 
   ISO 10646", RFC 2044, October 1996. 
    
   [RFC2045] N. Freed, N. Borenstein, "Multipurpose Internet Mail 
   Extensions (MIME) Part One: Format of Internet Message Bodies", RFC 
   2045, November 1996. 
    
   [RFC2046] N. Freed & N. Borenstein, "Multipurpose Internet Mail 
   Extensions (MIME) Part Two: Media Types", RFC 2046, November 1996. 
    
   [RFC2047] K. Moore, "MIME (Multipurpose Internet Mail Extensions) 
   Part Three: Message Header Extensions for Non-ASCII Text", RFC 2047, 
   November 1996. 
    
   [RFC2234] D. Crocker and P. Overell, "Augmented BNF for Syntax 
   Specifications: ABNF", RFC 2234, Internet Mail Consortium and Demon 
   Internet Ltd., November 1997. 
    
   [RFC2927] T. Howes, M. Smith, "MIME Content-Type for Directory 
   Information", RFC2927, September 2000. 
    
    
6.2 Informative References 
    
 
   [RFC2026] S. Bradner, "The Internet Standards Process -- Revision 3", 
   BCP 9, RFC 2026, October 1996. 
    
   [RFC2256] M. Wahl, "A Summary of the X.500(96) User Schema for use 
   with LDAPv3", RFC 2256, December 1997. 
 
    
7. Acknowledgments 
    
    
   The engineering team for listing service requirements: 
    
         Chris Apple - DSI Consulting, Inc. 
         Sanjay Jain - Oracle 
         Michael Mealling - Verisign 
         John Strassner - Intelliden 
         Sam Sun - CNRI 
         Mark Wahl - Sun Microsystems 
         Chris Weider - Microsoft 
    
   Paul Hoffman for review and comments resulting from his effort to 
   develop a platform for the initial release of the schema listing 
   service. 
 
 
Apple                  Expires - December 2003              [Page 29] 

INTERNET DRAFT    Directory Schema Listing Metadata         June 2003 
 
 
    
   The members of the ietf-schema-reg@imc.org mailing list. 
 
    
8. Author's Address 
    
    
   Chris Apple 
   DSI Consulting, Inc. 
   3601 W. Hundred Road 
   Chester, VA 23831 
   Phone: +1 856 869 0768 
   Email: capple@dsi-consulting.net 
    
    
    
    
    
             This INTERNET-DRAFT expires December 2003. 
                                 





























 
 
Apple                  Expires - December 2003              [Page 30]