INTERNET-DRAFT C. Apple <draft-ietf-schema-mime-metadata-01.txt> AT&T Labs Expires: October 21, 1998 21 April 1998 Directory Schema Listing Meta Data <draft-ietf-schema-mime-metadata-01.txt> Status of this Memo This document is an Internet-Draft. 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.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), or ftp.isi.edu (US West Coast). 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. Apple [Page 1] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 Table of Contents 1.0 Introduction. . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Terms and Definitions . . . . . . . . . . . . . . . . . . . 3 2.0 The "schema-metadata-0" MIME Directory Profile Registration 4 3.0 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 . . . . . . . . . . . . . . . . . . . . . . 10 3.7 contactName . . . . . . . . . . . . . . . . . . . . . . . . 11 3.8 contactEmail. . . . . . . . . . . . . . . . . . . . . . . . 11 3.9 contactPhone. . . . . . . . . . . . . . . . . . . . . . . . 12 3.10 contactAddress . . . . . . . . . . . . . . . . . . . . . . 13 3.11 authLanguage . . . . . . . . . . . . . . . . . . . . . . . 13 3.12 authName . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.13 authEmail. . . . . . . . . . . . . . . . . . . . . . . . . 15 3.14 authPhone. . . . . . . . . . . . . . . . . . . . . . . . . 16 3.15 authAddress. . . . . . . . . . . . . . . . . . . . . . . . 16 3.16 specURL. . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.17 security . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.18 created. . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.19 moreInfo . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.20 caveat . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.21 listingComments. . . . . . . . . . . . . . . . . . . . . . 21 3.22 schemaPak. . . . . . . . . . . . . . . . . . . . . . . . . 22 3.23 pakMember. . . . . . . . . . . . . . . . . . . . . . . . . 22 4.0 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.1 Schema Unit Listing Request Use of Profile. . . . . . . . . 23 4.2 Published Schema Unit Listing Use of Profile. . . . . . . . 24 4.3 Schema Pak Listing Request Use of Profile . . . . . . . . . 25 4.4 Published Schema Pak Listing Use of Profile . . . . . . . . 25 5.0 Security Considerations . . . . . . . . . . . . . . . . . . 26 6.0 Acknowledgements. . . . . . . . . . . . . . . . . . . . . . 27 7.0 References. . . . . . . . . . . . . . . . . . . . . . . . . 27 8.0 Author's Address. . . . . . . . . . . . . . . . . . . . . . 28 Apple [Page 2] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 1.0 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 [MIMEDIR] 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 [MIMEDIR]; 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 [MIMEDIR] Schema Unit Listing - the combination of a single schema unit content file intended for use within the context of a particular protocol and Apple [Page 3] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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.0 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" 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 Apple [Page 4] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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. 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 Apple [Page 5] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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.0 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 BNF in [RFC822]): name = base-component "." sequence "." version base-component = "base" / oid oid = oid-component *("." oid-component) oid-component = 1*DIGIT Apple [Page 6] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): 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. Apple [Page 7] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 implementors. 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 BNF in [RFC822]): 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 Type purpose: To represent a file name in the schema listing repository for a schema unit content constructed using an appropriate profile of [MIMEDIR]. Type encoding: 8bit Type valuetype: text, with the following syntax (specified using the BNF in [RFC822]): fname = <a file name as specified in [FILESYN]> Apple [Page 8] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 ; 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. Currently, there are five [MIMEDIR] profiles defined for containing schema unit content: [MIMELDAP], [MIMEWHOISPP], [MIMEWHOIS], and [MIMERWHOIS]. Additional profiles may be defined in other documents. Each of these profiles is identified 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 BNF in [RFC822]): related = md-filename *SPACE "$" *SPACE related-option 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 Apple [Page 9] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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. 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. Apple [Page 10] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 Type encoding: 8bit Type valuetype: text, with the following syntax (specified using the BNF in [RFC822]): 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 BNF in [RFC822]): 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. 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. Apple [Page 11] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 Type encoding: 8bit Type valuetype: text, with the following syntax (specified using the BNF in [RFC822]): 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. 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 Apple [Page 12] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 Type valuetype: text, with the following syntax (specified using the BNF in [RFC822]): 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 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 BNF in [RFC822]): 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: Apple [Page 13] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): lac-lang = <a language tag defined in [RFC1766]> Type special notes: This type MAY be multi-valued A language paramter MUST NOT be used with this type. 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 BNF in [RFC822]): utf8-text = 1*<any character encoded according to [RFC2044]> Type special notes: Apple [Page 14] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): 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: Apple [Page 15] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): lac-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. The value of this type MAY be identical to the value of the 'contactPhone' type defined above. 3.15 authAddress Apple [Page 16] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): 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: 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. Apple [Page 17] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 BNF in [RFC822]): utf8-text = 1*<any character encoded according to [RFC2044]> 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 shcema 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 Apple [Page 18] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 was published. Type encoding: 8bit Type valuetype: date-time, with the following syntax (specified using the BNF in [RFC822]): 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 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 BNF in [RFC822]): 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 Apple [Page 19] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 ; 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 [MIMEDIR]-based schema unit content not currently ; 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 expressable using a [MIMEDIR] 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. Apple [Page 20] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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. 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 BNF in [RFC822]): 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 Apple [Page 21] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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 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 BNF in [RFC822]): 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. Apple [Page 22] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 3.23 pakMember To: ietf-mime-direct@imc.org Subject: Registration of text/directory MIME type pakMember Type name: pakMember 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 BNF in [RFC822]): 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.0 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 Apple [Page 23] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 Message-Id: <ids1@wherever.com> 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: Whome Ever contactEmail: Whomever@wherever.com contactPhone: +1 908 555 1212 contactAddress: Some Street $ Some City $ Some State $ Some Country authLanguage: en authName: Whome 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: Whome Ever contactEmail: Whomever@wherever.com contactPhone: +1 908 555 1212 contactAddress: Some Street $ Some City $ Some State $ Some Country Apple [Page 24] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 authLanguage: en authName: Whome 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. 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: Whome Ever contactEmail: Whomever@wherever.com contactPhone: +1 908 555 1212 contactAddress: Some Street $ Some City $ Some State $ Some Country authLanguage: en authName: Whome 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 Apple [Page 25] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 associated with each schema unit content file referenced by a pakMember type value. specFile: 1.2.ldap 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: Whome Ever contactEmail: Whomever@wherever.com contactPhone: +1 908 555 1212 contactAddress: Some Street $ Some City $ Some State $ Some Country authLanguage: en authName: Whome 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.0 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 [Page 26] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 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.0 Acknowledgements The engineering team for listing service requirements: Chris Apple - AT&T Labs Sanjay Jain - Oracle Michael Mealling - NSI John Strassner - Cisco Sam Sun - CNRI Mark Wahl - Critical Angle Chris Weider - Microsoft 7.0 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-ietf-schema-file-list-01.txt>, April 1998. [MIME] [RFC2045], [RFC2046], and [RFC2047]. [MIMEDIR] T. Howes, M. Smith, "A MIME Content-Type for Directory Information", INTERNET-DRAFT <draft-ietf-asid-mime-direct-05.txt>, November 1997. [RFC822] D. Crocker, "Standard of the Format of ARPA-Internet Text Messages", STD 11, RFC 822, August 1982. [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. Apple [Page 27] INTERNET-DRAFT Directory Schema Listing Meta Data 21 April 1998 [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", March 1997. [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. [RFC2256] M. Wahl, "A Summary of the X.500(96) User Schema for use with LDAPv3", RFC 2256, December 1997. 8.0 Author's Address Chris Apple AT&T Labs 600 - 700 Mountain Ave., Room 2F-165 Murray Hill, NJ 07974-0636 USA E-Mail: capple@att.com Phone: +1 908 582 2409 FAX: +1 908 582 3296 This INTERNET-DRAFT expires on October 21, 1998. Apple [Page 28]