Network Working Group T. Genovese
Request for Comments: 2218 Microsoft
Category: Standards Track B. Jennings
Sandia National Laboratory
October 1997
A Common Schema for the Internet White Pages Service
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
This work is the result of the IETF Integrated Directory Services
(IDS) Working Group. The IDS Working Group proposes a standard
specification for a simple Internet White Pages service by defining a
common schema for use by the various White Pages servers. This
schema is independent of specific implementations of the White Pages
service.
This document specifies the minimum set of core attributes of a White
Pages entry for an individual and describes how new objects with
those attributes can be defined and published. It does not describe
how to represent other objects in the White Pages service. Further,
it does not address the search sort eXPectations within a particular
service.
1.0 IntrodUCtion to IWPS
The Internet community has stated a need for the development and
deployment of a White Pages service for use in locating information
about people in the Internet [PA94]. To facilitate interoperability
and to provide a common user experience, the Internet White Pages
Service (IWPS) must have a common set of information about each
person.
A common user object would allow a user to go between implementations
of the service and to expect consistency in the types of information
provided. A common user object would also provide developers with an
unambigious method of representing the information managed by the
service.
This document will focus only on common information modeling issues
to which all IWPS providers must conform.
2.0 Scope
This document establishes the set of attributes that specify the
Common User Information Object for the IWPS. It does not attempt to
be an exhaustive specification of all objects that may be stored in
the IWPS. The process used by this document to define the user object
is recommended to be used to define other information objects used in
the IWPS.
All conforming implementations must support at the minimum, the core
attributes listed in Section 5.0. Implementations may include local
attributes in addition to the core set and still be considered "in
conformance".
This document will not specify rules with respect to information
privacy. Each country has its own set of laws and practices.
Previous work covering this area has been done by the North American
Directory Forum (NADF), whose publication [NADF92] contain
recommendations for registrants' rights in both the USA and Canada.
This document does not specify a Directory Access protocol (i.e.
whois++, LDAP, DAP, etc.).
3.0 IWPS Schema Considerations
The description of the IWPS information object consists of the
following requirements:
1. Syntax for definition/representation of information
object templates.
2. Publication of information object templates, etc.
3. Database structure or schema.
Items 1 and 2 will be covered in this document. Because database
structure can potentially restrict implementations (i.e. X.500 schema
based versus DNS schema based) it will be treated as a separate
research topic and will not be defined in this paper.
4.0 Syntax for Definition/Representation of Information Object
Templates
A clear, precise, and consistent method must be used when discussing
information object templates and their associated attributes.
Therefore, this document makes uses of the previously defined syntax
used by LDAP. To avoid restrictions on implementations of the IWPS,
some syntax are listed as requirements vs specific encodings. The
general IWPS syntax is included in section 6.0 for reference.
The IWPS Person Object specifies a limited set of recommended
attributes that a White Pages Service must include. Storage of user
attributes are a local issue, therefore, this memo suggests storage
sizes but not storage types.
This document lists the syntax with the attributes for developers of
user interface (UIs) to use as a reference, but it does not specify
how the UI should display these attributes.
Attributes that contain multiple-line text (i.e. Address) must use
the procedure defined in RFC822 in section 3.1.1 on "folding" long
header lines [RFC-822].
5.0 Information Object Template Definitions
This section describes the IWPS Person Information Object Template
and its associated attributes. The Person Object is a simple list of
attributes, no structure nor object inheritance is implied.
IWPS client applications should use the following size
recommendations as the maximum sizes of the attributes. However,
applications should be able to handle attributes of arbitrary size,
returned by a server which may not comply with these recommendation.
All size recommendations are in characters.
Note: Because many characters in many encodings require more than one
byte, the size recommendations cannot be interpreted as sizes in
bytes.
This set of attributes describes information types, and are not
defined attributes in a particular schema. Any technology deploying
a White Page service (WHOIS ++, LDAP, vCard, etc.) will need to
publish as a companion document, their specific schema detailing how
the general attributes of the White Pages schema are expressed.
SPECIAL CONSIDERATIONS
Phone number: The full international form is recommended;
i.e. +1 206 703 0852. The field may contain
additional information following the phone
number. For example:
+1 800 759 7243 #123456
+1 505 882 8080 ext. 30852
Email address: Is multivalued.
Certificate: Is multivalued.
Common Name: Is multivalued.
Language Spoken: Is multivalued.
THE INFORMATION OBJECT TEMPLATE FOR THE IWPS PERSON
--General Attributes --
Field Name Size Syntax
Email 360 Mailbox
Cert 4000 Certificate
Home Page 128 URI
Common Name 64 WhitepageString
Given Name 48 WhitepageString
Surname 48 WhitepageString
Organization 64 WhitepageString
Locality 20 WhitepageString
Country 2 WhitepageString (ISO 3166)
Language Spoken 128 WhitepageString (RFC1766)
--Personal Attributes
Personal Phone 30 PrintableString
Personal Fax 30 PrintableString
Personal Mobile Phone 30 PrintableString
Personal Pager Number 30 PrintableString
Personal Postal Address 255 Address
Description 255 WhitepageString
--Organizational Attributes
Title 64 WhitepageString
Office Phone 30 PrintableString
Office Fax 30 PrintableString
Office Mobile Phone 30 PrintableString
Office Pager 30 PrintableString
Office Postal Address 255 Address
--Ancillary
Creation Date 24 GeneralizedTime
Creator Name 255 URI
Modified Date 24 GeneralizedTime
Modifier Name 255 URI
6.0 IWPS Person Information Object Template Syntax
This section defines the syntax used by the IWPS person information
object template. It is copied in whole from the LDAP attribute
working document with some modification for completeness.
Certificate:
The certificate field is intended to hold any kind of certificate;
X.509 certificates are one example. A specific implementation will
specify how to indicate the type of certificate when describing
the mapping of the IWPS schema onto the implementation schema.
WhitepageString:
This syntax must be able to encode arbitrary ISO 10646 characters.
One such encoding is the UTF-8 encoding [UTF-8].
GeneralizedTime:
Values of this syntax are encoded as printable strings,
represented as specified in X.208. Note that the time zone must
be specified. It is strongly recommended that Zulu time zone be
used. For example:
199412161032Z
Mailbox:
here are many kinds of mailbox addresses, including X.400 and
Internet mailbox addresses. The implementation must clearly
distinguish between different types of mailbox address, for
instance by using a textual refix or a set of attribute types.
There must be a way to represent any mailbox type.
Address:
According to Universal Postal Union standards, this field must be
able to represent at least 6 lines of 40 characters.
PrintableString:
The encoding of a value with PrintableString syntax is the string
value itself. PrintableString is limited to the characters in
production <p>. Where production <p> is described by the
following:
<a> ::= 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i'
'j' 'k' 'l' 'm' 'n' 'o' 'p' 'q' 'r'
's' 't' 'u' 'v' 'w' 'x' 'y' 'z' 'A'
'B' 'C' 'D' 'E' 'F' 'G' 'H' 'I' 'J'
'K' 'L' 'M' 'N' 'O' 'P' 'Q' 'R' 'S'
'T' 'U' 'V' 'W' 'X' 'Y' 'Z'
<d> ::= '0' '1' '2' '3' '4' '5' '6' '7' '8' '9'
<p> ::= <a> <d> ''' '(' ')' '+' ',' '-' '.'
'/' ':' '?' ' '
7.0 Publication of IWPS Information Object Templates.
The Working Group recommends that all information object templates
used for the IWPS be published.
Individual organizations may define information object templates that
are local in scope as required to meet local organizational needs.
All information that the organization wishes to be part of the IWPS
must use a published IWPS information object template.
8.0 Data Privacy
Each country, and each state within the US, has legislation defining
information privacy. The suggested attributes in Section 5.0 may be
considered private and the directory administrator is strongly
advised to verify the privacy legislation for his domain.
As suggested in "Privacy and Accuracy in NIC Databases" [RFC-1355],
each directory provider should provide a clear statement of the
purpose of the directory, the information that should be contained in
it, and a privacy policy associated with that information. This
policy should include restrictions for data dissemination.
This policy is strongly recommended for the US and Canada and
required by many countries in the European Community for data
sharing.
9.0 Data Integrity
Data Integrity was first addressed in RFC1107 [KS89], which states
"a White Pages service will not be used, if the information it
provides is out of date or incorrect." Therefore, any production
IWPS provider must insure that all data is reasonably correct and
up-to-date.
The Ancillary Attributes of the IWPS person template denote the
information's source and date of origin, and the source and date of
its latest modification. They provide the user with some measurement
of the quality of data making it easy to determine the owner and
freshness of the data retrieved.
The IWPS User Agent must be able to retrieve and display Ancillary
Attributes. Retrieval and display may be done as separate
operations.
The Ancillary Attributes are recommended as the minimum set of
attributes for any new information object template. Each IWPS server
may individually decide whether to support the storage and retrieval
of this data.
The Ancillary Attributes (also defined in Section 5.0) provide the
following information about its associated information object:
1. The date and time the entry was created; Creation Date.
2. Owner or individual responsible for the data creation;
Creator Name.
3. The date and time of the last modification;
Modified Date.
4. Individual responsible for the last modification;
Modifier Name.
10.0 Security Considerations
Security is implementation and deployment specific and as such is not
addressed in this memo. Security must ensure that the constraints
mentioned in the Data Privacy Section 8.0 are complied with.
11.0 References
[KS89] Sollins, K., "A Plan for Internet Directory Services", RFC
1107, Laboratory for Computer Science, MIT, July 1989.
[NADF92] North American Directory Forum, "User Bill of Rights for
entries and listings in the Public Directory', RFC1295,
North American Directory Forum, January 1992.
[PA94] Postel, J., and C. Anderson, "WHITE PAGES MEETING REPORT",
RFC1588, University of Southern California, February 1994.
[RFC-822] Crocker, D., "Standard for the Format of ARPA Internet
Text Messages", STD 11, RFC822, August 1982.
[RFC-1355] Curran, J., and A. Marine, "Privacy and Accuracy Issues
in Network Information Center Databases", FYI 15, RFC1355, August
1992.
[UCS] Universal Multiple-Octet Coded Character Set (UCS) -
Architecture and Basic Multilingual Plane, ISO/IEC 10646-1, 1993.
[RFC-1766] Alvestrand, H., "Tags for the Identification of
Languages", RFC1766, March 1995.
[UTF-8] Yergeau, F., "UTF-8, a transformation format of ISO 10646",
Work in Progress.
11.0 Authors' Addresses
Tony Genovese
The Microsoft Corporation
One Microsoft Way
Redmond, Washington 98007
USA
Phone: (206) 703-0852
EMail: TonyG@Microsoft.com
Barbara Jennings
Sandia National Laboratories
Albuquerque, New Mexico 87106
USA
Phone: (505) 845-8554
EMail: jennings@sandia.gov