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]