X.500 URI Attribute Types and Object Class Mark Smith INTERNET-DRAFT University of Michigan 11 October 1995 Definition of X.500 Attribute Types and an Object Class to Hold Uniform Resource Identifiers (URIs) Filename: draft-ietf-asid-x500-url-02.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 ds.internic.net (US East Coast), nic.nordu.net (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim). Distribution of this memo is unlimited. Editorial comments should be sent to the author (mcs@umich.edu). Technical discussion will take place on the IETF ASID mailing list (ietf-asid@umich.edu). This Internet Draft expires April 11, 1995. Abstract Uniform Resource Locators (URLs) are being widely used to specify the location of Internet resources. There is an urgent need to be able to include URLs in the X.500 directory, and a desire to include other types of Uniform Resource Identifiers (URIs) as they are defined. A number of independent groups are already experimenting with the inclusion of URLs in the X.500 directory. This document builds on the experimentation to date and defines two new attribute types and an auxiliary object class to allow URIs, including URLs, to be stored in directory entries in a standard way. Smith IETF ASID Working Group [Page 1] INTERNET-DRAFT URI Attribute Types and Object Class 11 October 1995 Background and Intended Usage Uniform Resource Locators (URLs) as defined by [1] are the first of several types of Uniform Resource Identifiers (URIs) being defined by the IETF. This document defines two X.500 [2,3] attribute types (labeledURI and labeledURL) and an auxiliary object class (labeledURIObject) to hold all types of URIs, including URLs. It is assumed that as other kinds of URIs are defined, additional attribute types may be created to support storing them in directory entries. The rationale for adding separate attribute types for the different kinds of URIs is to support efficient programmatic access to specific types of URIs. For example, if an indexing service is only interested in URLs, having them available in their own attribute makes pulling them out of a directory entry straightforward and efficient. It is intended that the schema elements defined in this document will be progressed according to the process defined by the Internet X.500 Schema Working Group [4]. Schema Definition of the labeledURL Attribute Type Name: labeledURL ShortName: None Description: Uniform Resource Locator with optional label OID: umichAttributeType.41 (1.3.6.1.4.1.250.1.41) Syntax: caseExactString SizeRestriction: None SingleValued: False Discussion of the labeledURL Attribute Type The labeledURL attribute type has the caseExactString syntax (since URLs are case-sensitive) and it is multivalued. Values placed in the attribute should consist of a URL as defined in [1] optionally followed by one or more space characters and a label. Since space characters are not allowed to appear un-encoded in URLs, there is no ambiguity about where the label begins. Multiple labeledURL values will generally indicate different resources that are all related to the X.500 object, but may indicate different locations for the same resource. Smith IETF ASID Working Group [Page 2] INTERNET-DRAFT URI Attribute Types and Object Class 11 October 1995 The label is used to describe the resource to which the URL points, and is intended as a friendly name fit for human consumption. This document does not propose any specific syntax for the label part. Note that in some cases it may be helpful to include in the label some indication of the kind and/or size of the resource referenced by the URL. Note that the label may include any characters allowed by the caseExactString syntax, but that the use of non-IA5 (non-ASCII) characters is discouraged as not all directory clients may handle them in the same manner. Some examples of valid labeledURL values (the first does not have a label): ftp://ds.internic.net/rfc/rfc822.txt http://www.umich.edu/ University of Michigan Home Page http://champagne.inria.fr/Unites/rennes.gif Rennes [photo] Schema Definition of the labeledURI Attribute Type Name: labeledURI ShortName: None Description: Uniform Resource Identifier with optional label OID: umichAttributeType.57 (1.3.6.1.4.1.250.1.57) Syntax: caseExactString SizeRestriction: None SingleValued: False Discussion of the labeledURI Attribute Type The labeledURI attribute type has the caseExactString syntax (since URIs are case-sensitive) and it is multivalued. Values placed in the attribute should consist of a URI (at the present time, a URL) optionally followed by one or more space characters and a label. Since space characters are not allowed to appear un-encoded in URIs, there is no ambiguity about where the label begins. At the present time, the URI portion must comply with the URL specification [1]. Multiple labeledURI values will generally indicate different resources that are all related to the X.500 object, but may indicate different locations for the same resource. Smith IETF ASID Working Group [Page 3] INTERNET-DRAFT URI Attribute Types and Object Class 11 October 1995 The label is used to describe the resource to which the URI points, and is intended as a friendly name fit for human consumption. This document does not propose any specific syntax for the label part. Note that in some cases it may be helpful to include in the label some indication of the kind and/or size of the resource referenced by the URI. Note that the label may include any characters allowed by the caseExactString syntax, but that the use of non-IA5 (non-ASCII) characters is discouraged as not all directory clients may handle them in the same manner. Schema Definition of the labeledURIObject Object Class Name: labeledURIObject Description: object that contains the URI attribute types OID: umichObjectClass.15 (1.3.6.1.4.1.250.3.15) SubclassOf: top MustContain: MayContain: labeledURI, labeledURL Discussion of the labeledURIObject Object Class The labeledURIObject class is a subclass of top and may contain the labeledURI and labeledURL attributes. The intent is that this object class can be added to existing directory objects to allow for inclusion of URI values. This approach does not preclude including the labeledURI and labeledURL attribute types directly in other object classes as appropriate. References [1] Berners-Lee, T., Masinter, L., and McCahill, M., "Uniform Resource Locators (URL)", RFC 1738, CERN, Xerox Corporation, University of Minnesota, December 1994, [2] The Directory: Overview of Concepts, Models and Service. CCITT Recommendation X.500, 1988. [3] Information Processing Systems -- Open Systems Interconnection -- The Directory: Overview of Concepts, Models and Service. ISO/IEC JTC 1/SC21; International Standard 9594-1, 1988. Smith IETF ASID Working Group [Page 4] INTERNET-DRAFT URI Attribute Types and Object Class 11 October 1995 [4] Howes, T., Rossen, K., Sataluri, S., and Wright, R., "Procedures for Formalizing, Evolving, and Maintaining the Internet X.500 Directory Schema", Internet Draft (Work In Progress) of the Schema Working Group, Security Considerations Security considerations are not discussed in this memo. Acknowledgments Paul-Andre Pays, Martijn Koster, Tim Howes, Rakesh Patel, and Russ Wright provided invaluable assistance in the creation of this document. This material is based upon work supported by the National Science Foundation under Grant No. NCR-9416667. Author's Address Mark Smith University of Michigan Information Technology Division 535 W. William St. Ann Arbor, MI 48103-4943, USA Phone: +1 313 764-2277 Fax: +1 313 765-5140 EMail: mcs@umich.edu This Internet Draft expires April 11, 1995. Smith IETF ASID Working Group [Page 5]