One document matched: draft-ietf-schema-rwhois-00.txt
Network Working Group Michael Mealling
Request for Comments: DRAFT Network Solutions, Inc.
March 13, 1998
A MIME Directory Profile for RWhois 1.5 Schema
<draft-ietf-schema-rwhois-00.txt>
1. 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), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
2. Abstract
This document defines two MIME directory profiles [1] for holding a
RWhois 1.5 [2] schema. It is intended for communication with the
Internet schema listing service [3]. One profile defines an attribute
and the other defines a class.
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 RFC 2119 [4].
3. Overview
RWhois 1.5 has the concepts of attributes and classes. A schema in
the sense used by Internet schema listing service is analogous to
an RWhois class. A class definition in RWhois is simply the listing
of attributes that are well understood for that class. There is a
desire in many directory services to encourage attribute definition
re-use. Therefore, this schema description service will separate
the attribute descriptions from the class descriptions.
The MIME-DIR specification describes how relationships between
objects included in a multipart/related MIME type can be specified.
This is used by the class profile to include by reference all of
the attribute definitions included within one multipart/related
MIME object.
Mealling [Page 1]
draft-ietf-schema-rwhois-00.txt March 1998
Due to the requirements of the schema listing service, there must be
one 'top' profile, which is called 'schema-rwhois-0'. Since the 'top'
of the RWhois schema definition is the class, the class definition's
profile name will be 'schema-rwhois-0'. The attribute definition will
use the profile name 'rwhois-attribute-0'.
4. Multipart/related header values
The schema listing service's infrastructure depends on an easily
parsed and easily navigated structure of filenames in a directory. In
some cases the definition of a schema is contained in one MIME-DIR
profile. This makes for a simple correlation to one file and also
makes it easy to find that file's profile and schema name.
In the case of RWhois' class and attribute objects this is not so
simple as the actual schema name would be in the
multipart/related's start object. Luckily the multipart/related
standard gives us the "Start-Info" parameter. For the purposes of
the schema-listing application's use of RWhois schema this parameter
is used to denote the profile of the start object.
All other attributes have standard values. This leaves us with
the following specification:
'boundary' has its standard RFC2046 specified value
'start' is the CID of the 'schema-rwhois-0' or class object
'type' MUST be 'text/directory'
'start-info' MUST be 'schema-rwhois-0'
Mealling [Page 2]
draft-ietf-schema-rwhois-00.txt March 1998
An example:
To: ietf-schema-review@TBD
Subject: schema unit listing request
MIME-Version: 1.0
Message-Id: <ids1@wherever.com>
Content-Type: multipart/related; boundary="boundary";
start=3@foo.com; type="text/directory";
start-info="schema-rwhois-0"
Content-ID: top@foo.com
--boundary
Content-Type: text/directory; profile="schema-rwhois-0"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 3@foo.com
(class description elements and values as specified in Section 5,
which includes a reference to an attribute whose CID is 4@foo.com)
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 4@foo.com
(an RWhois attribute definition)
--boundary
5. schema-rwhois-0 definition
The schema-rwhois-0 definition is extremely straightforward. It
is a combination of the '-schema' and '-class' directives defined
in RFC2167. The class directive defines the description and version
of the class. The schema directive defines the attributes that are
valid for that class but also lists the description of the values
themselves. For ease of parsing, this class definition will include
the attribute name. Therefore, the attribute definition object will not
have to be parsed in order to allow for the most basic function of
showing the user the attribute and plain text value.
Therefore, the well understood attributes for the schema-rwhois-0
profile are as follows:
'name' contains the class' name
'description' contains a plain text description of the class
'version' contains the version as specified by RFC2167
'attribute' contains the attribute name and the CID of its definition
Mealling [Page 3]
draft-ietf-schema-rwhois-00.txt March 1998
The syntax of the 'attribute' value is as follows:
attribute-value = name " " CID
name=1*id-char
CID = Content-ID as defined as used in RFC1873 [5]
id-char = alpha / digit / "_" / "-"
alpha = "a".."z" / "A".."Z"
digit = "0".."9"
Example:
Content-Type: text/directory; profile="schema-rwhois-0"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 3@foo.com
Name: Referral
Description: Required class for specifying a referral
Version: 19961101
Attribute: Referred-Auth-Area 4@foo.com
Attribute: Referral 5@foo.com
This example in its entirety would be included as the start object of
a multipart/related object that included the 4@foo.com and 5@foo.com
objects.
The MIME-DIR profile registration template is included in Section 8.
6. rwhois-attribute-0 definition
The rwhois attribute definition profile is also fairly
straightforward since it follows the '-schema' directive very closely.
The RFC2167 defined attribute properties are:
Attribute This is the name of the attribute.
Description This is a natural language description of the
attribute.
Type This is a parameter that broadly indicates the use
of the attribute to the protocol. There are three
standard types: TEXT, ID, and SEE-ALSO.
Format This is an interpretable string that describes the
acceptance format of the value.
Indexed This is a true or false flag indicating that this
attribute should be indexed (and therefore able to be
searched).
Required This is a true or false flag indicating that this
attribute must have a value in an instance of the
class.
Mealling [Page 4]
draft-ietf-schema-rwhois-00.txt March 1998
Multi-Line This is a true or false flag indicating that this
attribute may have multiple instances in a class, but
all of the instances are to be considered as multiple
lines of the same attribute instance. This allows
normal line terminators to terminate values.
Repeatable This is a true or false flag indicating that there may
be multiple instances of this attribute in a class and
each instance is to be interpreted as a separate
instance (in contrast to Multi-Line).
Primary This is a true or false flag that indicates that this
attribute is a primary key.
Hierarchical This is a true or false flag that indicates that this
attribute is lexically hierarchical.
Private This is a true or false flag that indicates whether or
not this attribute is private (that is, publicly not
viewable).
Each of these properties corresponds exactly to an attribute in the
'rwhois-attribute-0' profile except that 'rwhoisAttrDef' is
prepended to the attribute name. The values follow the ABNF specified
in RFC2167.
Example:
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 4@foo.com
rwhoisAttrDefAttribute: Referral
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Referral to an RWhois server
rwhoisAttrDefIndexed: OFF
rwhoisAttrDefRequired: ON
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: ON
rwhoisAttrDefHierarchical: OFF
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: Text
rwhoisAttrDefPrimary: OFF
Mealling [Page 5]
draft-ietf-schema-rwhois-00.txt March 1998
7. Full example
This is a full example of a schema object that is intended to be
registered with the schema listing service. It represents the Base
class which every RWhois class must include.
To: ietf-schema-review@TBD
Subject: schema unit listing request
MIME-Version: 1.0
Message-Id: <ids1@wherever.com>
Content-Type: multipart/related; boundary="boundary";
start=3@foo.com; type="text/directory";
start-info="schema-rwhois-0"
Content-ID: top@foo.com
--boundary
Content-Type: text/directory; profile="schema-rwhois-0"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 3@foo.com
Name: Base
Description: The RWhois 1.5 Base class from which all classes inherit
Version: 19961101
Attribute: Class-Name 4@foo.com
Attribute: Auth-Area 5@foo.com
Attribute: ID 6@foo.com
Attribute: Updated 7@foo.com
Attribute: Guardian 8@foo.com
Attribute: Private 9@foo.com
Attribute: TTL 10@foo.com
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 4@foo.com
rwhoisAttrDefAttribute: Class-Name
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Type of the object.
rwhoisAttrDefIndexed: OFF
rwhoisAttrDefRequired: ON
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: OFF
rwhoisAttrDefHierarchical: OFF
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: Text
rwhoisAttrDefPrimary: OFF
--boundary
Mealling [Page 6]
draft-ietf-schema-rwhois-00.txt March 1998
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 5@foo.com
rwhoisAttrDefAttribute: Auth-Area
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Authority area to which the object belongs
rwhoisAttrDefIndexed: OFF
rwhoisAttrDefRequired: ON
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: OFF
rwhoisAttrDefHierarchical: ON
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: Text
rwhoisAttrDefPrimary: OFF
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 6@foo.com
rwhoisAttrDefAttribute: ID
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Globally unique object identifier
rwhoisAttrDefIndexed: ON
rwhoisAttrDefRequired: OFF
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: OFF
rwhoisAttrDefHierarchical: ON
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: Text
rwhoisAttrDefPrimary: OFF
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 7@foo.com
rwhoisAttrDefAttribute: Updated
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Last modification time/serial number
rwhoisAttrDefIndexed: OFF
rwhoisAttrDefRequired: OFF
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: OFF
rwhoisAttrDefHierarchical: OFF
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: Text
rwhoisAttrDefPrimary: OFF
--boundary
Mealling [Page 7]
draft-ietf-schema-rwhois-00.txt March 1998
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 8@foo.com
rwhoisAttrDefAttribute: Guardian
rwhoisAttrDefFormat: none
rwhoisAttrDefDescription: Guardian object
rwhoisAttrDefIndexed: OFF
rwhoisAttrDefRequired: OFF
rwhoisAttrDefMulti-line: OFF
rwhoisAttrDefRepeatable: ON
rwhoisAttrDefHierarchical: OFF
rwhoisAttrDefPrivate: OFF
rwhoisAttrDefType: ID
rwhoisAttrDefPrimary: OFF
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 9@foo.com
rwhoisAttrDefAttribute:Private
rwhoisAttrDefFormat:none
rwhoisAttrDefDescription:object is private
rwhoisAttrDefIndexed:OFF
rwhoisAttrDefRequired:OFF
rwhoisAttrDefMulti-line:OFF
rwhoisAttrDefRepeatable:OFF
rwhoisAttrDefHierarchical:OFF
rwhoisAttrDefPrivate:ON
rwhoisAttrDefType:Text
rwhoisAttrDefPrimary:OFF
--boundary
Content-Type: text/directory; profile="rwhois-attribute-0>"
Content-Transfer-Encoding: Quoted-Printable
Content-ID: 10@foo.com
rwhoisAttrDefAttribute:TTL
rwhoisAttrDefFormat:none
rwhoisAttrDefDescription:Time to live
rwhoisAttrDefIndexed:OFF
rwhoisAttrDefRequired:OFF
rwhoisAttrDefMulti-line:OFF
rwhoisAttrDefRepeatable:OFF
rwhoisAttrDefHierarchical:OFF
rwhoisAttrDefPrivate:OFF
rwhoisAttrDefType:Text
rwhoisAttrDefPrimary:OFF
--boundary
Mealling [Page 8]
draft-ietf-schema-rwhois-00.txt March 1998
8. Registration Templates
8.1 'schema-rwhois-0' profile registration template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory profile "schema-rwhois-0"
Profile name: schema-rwhois-0
Profile purpose: To represent the RWhois 1.5 class definition as
defined in RFC2167.
Profile types: name, description, version, attribute
Profile special notes:
Neither the "BEGIN" and "END" types nor type grouping are used
in contents of this profile.
The only type which is allowed to be multi-valued is 'attribute'.
The SOURCE type is optional, and if values are present it is
suggested that they be a rwhois URI as RWhois schema definitions
from other sources have not been investigated.
Intended usage: COMMON
8.2 'schema-rwhois-0' 'rwhoisAttrDefAttribute' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefAttribute
Type name: rwhoisAttrDefAttribute
Type purpose: This is the name of the attribute.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.3 'schema-rwhois-0' 'rwhoisAttrDefDescription' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefDescription
Type name: rwhoisAttrDefDescription
Type purpose: This is a natural language description of the
attribute.
Mealling [Page 9]
draft-ietf-schema-rwhois-00.txt March 1998
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.4 'schema-rwhois-0' 'rwhoisAttrDefType' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefType
Type name: rwhoisAttrDefType
Type purpose: This is a parameter that broadly indicates the use
of the attribute to the protocol. There are three
standard types: TEXT, ID, and SEE-ALSO.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.5 'schema-rwhois-0' 'rwhoisAttrDefFormat' type registration template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory MIME type rwhoisAttrDefFormat
Type name: rwhoisAttrDefFormat
Type purpose: This is an interpretable string that describes the
acceptance format of the value.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.6 'schema-rwhois-0' 'rwhoisAttrDefIndexed' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefIndexed
Type name: rwhoisAttrDefIndexed
Mealling [Page 10]
draft-ietf-schema-rwhois-00.txt March 1998
Type purpose: This is a true or false flag indicating that this
attribute should be indexed (and therefore able to be
searched).
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.7 'schema-rwhois-0' 'rwhoisAttrDefRequired' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefRequired
Type name: rwhoisAttrDefRequired
Type purpose: This is a true or false flag indicating that this
attribute must have a value in an instance of
the class.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.8 'schema-rwhois-0' 'rwhoisAttrDefMulti-Line' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefMulti-Line
Type name: rwhoisAttrDefMulti-Line
Type purpose: This is a true or false flag indicating that this
attribute may have multiple instances in a class, but
all of the instances are to be considered as multiple
lines of the same attribute instance. This allows
normal line terminators to terminate values.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
Mealling [Page 11]
draft-ietf-schema-rwhois-00.txt March 1998
8.9 'schema-rwhois-0' 'rwhoisAttrDefRepeatable' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefRepeatable
Type name: rwhoisAttrDefRepeatable
Type purpose: This is a true or false flag indicating that there may
be multiple instances of this attribute in a class and
each instance is to be interpreted as a separate
instance (in contrast to Multi-Line).
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.10 'schema-rwhois-0' 'rwhoisAttrDefPrimary' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory MIME type rwhoisAttrDefPrimary
Type name: rwhoisAttrDefPrimary
Type purpose: This is a true or false flag that indicates that this
attribute is a primary key.
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.11 'schema-rwhois-0' 'rwhoisAttrDefHierarchical' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory type rwhoisAttrDefHierarchical
Type name: rwhoisAttrDefHierarchical
Type purpose: This is a true or false flag that indicates that this
attribute is lexically hierarchical.
Type encoding: 8bit
Type valuetype: text
Mealling [Page 12]
draft-ietf-schema-rwhois-00.txt March 1998
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
8.12 'schema-rwhois-0' 'rwhoisAttrDefPrivate' type template
To: ietf-mime-direct@imc.org
Subject: Registration of text/directory MIME type rwhoisAttrDefPrivate
Type name: rwhoisAttrDefPrivate
Type purpose: This is a true or false flag that indicates whether or
not this attribute is private (that is, publicly not
viewable).
Type encoding: 8bit
Type valuetype: text
Type special notes: This value must follow the rules as specified
in RFC2167.
Intended usage: COMMON
9. Author's Contact
Michael Mealling
Network Solutions
505 Huntmar Park Drive
Herndon, VA 22070
voice: (703) 742-0400
fax: (703) 742-9552
email: michaelm@netsol.com
URL: http://www.netsol.com/
10. References:
[1] Howes, Tim, Mark Smith, Frank Dawson. "A MIME Content-Type for
Directory Information", 07/24/1997, INTERNET DRAFT
<draft-ietf-asid-mime-direct-04.txt>.
[2] Williamson, S., M. Kosters, et al. "Referral Whois (RWhois)
Protocol V1.5", 06/01/1997, RFC2167.
[3] Apple, C. "Directory Schema Listing Requirements", 08/28/1997,
INTERNET DRAFT <draft-ietf-schema-rqmts-list-00.txt>.
[4] Bradner, S. "Key words for use in RFCs to Indicate Requirement
Levels", 3/01/1997, RFC2119.
[5] Levinson, E., J. Clark, "Message/External-Body Content-ID Access
Type", RFC1872, 12/01/95.
Mealling [Page 13]
| PAFTECH AB 2003-2026 | 2026-04-19 15:21:19 |