Network Working Group                 The North American Directory Forum
Request for Comments: 1218                                    April 1991


                       A Naming Scheme for c=US

Status of this Memo

  This memo provides information for the Internet community.  It does
  not specify an Internet standard.  Distribution of this memo is
  unlimited.

Summary

  This RFC is a near-verbatim copy of a document, known as NADF-123,
  which has been produced by the North American Directory Forum (NADF).
  The NADF is a collection of organizations which offer, or plan to
  offer, public Directory services in North America, based on the CCITT
  X.500 Recommendations.  As a part of its charter, the NADF must reach
  agreement as to how entries are named in the public portions of the
  North American Directory.  NADF-123 is a scheme proposed for this
  purpose.  The NADF is circulating NADF-123 widely, expressly for the
  purpose of gathering comments.  The next meeting of the NADF is in
  mid-July, and it is important for comments to be received prior to
  the meeting, so that the scheme may receive adequate review.


                        A Naming Scheme for c=US
                   The North American Directory Forum
                                NADF-123
                      Supercedes: NADF-103, NADF-71
                             March 21, 1991

ABSTRACT

  This is one of a series of documents produced for discussion within
  the North American Directory Forum.  Distribution, with attribution,
  is unlimited.  This document is being circulated for comment.  The
  deadline for comments is July 1, 1991.  Comments should be directed
  to the contact given on page 16.

1.  Introduction

  Computer networks form the infrastructure between the users they
  interconnect.  For example, the electronic mail service offered by
  computer networks provides a means for users to collaborate towards
  some common goal.  In the simplest cases, this collaboration may be
  solely for the dissemination of information.  In other cases, two



NADF                                                            [Page 1]

RFC 1218                A Naming Scheme for c=US              April 1991


  users may work on a joint research project, using electronic mail as
  their primary means of communication.

  However, networks themselves are built on an underlying naming and
  numbering infrastructure, usually in the form of names and addresses.
  For example, some authority must exist to assign network addresses to
  ensure that numbering collisions do not occur.  This is of paramount
  importance for an environment which consists of multiple service
  providers.

2.  Approach

  It should be observed that there are several different naming
  universes that can be realized in the Directory Information Tree
  (DIT).  For example, geographical naming, community naming, political
  naming, organizational naming, and so on.  The choice of naming
  universe largely determines the difficulty in mapping a user's query
  into a series of Directory operations.  Although it is possible to
  simultaneously support multiple naming universes with the DIT, this
  is likely to be unnatural.  As such, this proposal focuses on a
  single naming universe.

  The naming universe in this proposal is based on civil authority.
  That is, it uses the existing civil naming infrastructure and
  suggests a (nearly) straight-forward mapping on the DIT.  There are
  four components to the naming architecture:

  (1)  civil naming and optimized civil naming, which reflects
       names assigned by civil authority;

  (2)  organizational naming, which reflects names assigned
       within organizations;

  (3)  ADDMD naming, which reflects names assigned to public
       providers within the Directory service; and,

  (4)  application naming, which reflects names assigned to OSI
       entities.

  An important characteristic is that entries should be listed wherever
  searches for them are likely to occur.  This implies that a single
  object may be listed under several entries.

2.1.  Names and User-Friendliness

  It must be emphasized that there are three distinct concepts which
  are often confused when discussing a naming scheme:




NADF                                                            [Page 2]

RFC 1218                A Naming Scheme for c=US              April 1991


  (1)  user-friendly naming: a property of a Directory which
       allows users to easily identity objects;

  (2)  user-friendly name: a technique for naming an object
       which exhibits "friendliness" according to an arbitrary
       set of user-criteria; and,

  (3)  Distinguished Name: the administratively assigned name
       for an entry in the OSI Directory.

  It must be emphasized that Distinguished Names are not necessarily
  user-friendly names, and further, that user-friendly naming in the
  Directory is a property of the Directory Service, not of
  Distinguished Names.

2.2.  Choice of RDN Names

  The key aspect to appreciate for choice of RDNs is that they should
  provide a large name space to avoid collisions: the naming strategy
  must provide enough "real estate" to accommodate a large demand for
  entries.  This is the primary requirement for RDNs.  A secondary
  requirement is that RDNs should be meaningful (friendly to people)
  and should not impede searching.

  However, it is important to understand that this second requirement
  can be achieved by using additional (non-distinguished) attribute
  values.  For example, if the RDN of an entry is

               organizationName is Performance Systems International

  then it is perfectly acceptable (and indeed desirable) to have other
  values for the organizationName attribute, e.g.,

               organizationName is PSI

  The use of these abbreviated names greatly aids searching whilst
  avoiding unnecessary Distinguished Name conflicts.

  In order to appreciate the naming scheme which follows, it is
  important to understand that it leverages, wherever possible,
  existing naming infrastructure.  That is, it relies heavily on non-
  OSI naming authorities which already exist.  Note that inasmuch as it
  relies on existing naming authorities, there is little chance that
  any "final" national decision could obsolete it.  [Footnote: Any
  naming scheme may be subject to the jurisdiction of certain national
  agencies.  For example, the US State Department is concerned with any
  impact on US telecommunications treaty obligations.] (To do so would
  require a national decision that disregards existing national and



NADF                                                            [Page 3]

RFC 1218                A Naming Scheme for c=US              April 1991


  regional infrastructure, and establishes some entirely new and
  different national naming infrastructure.)

3.  Civil Naming

  Civil naming occurs at three levels:

  (1)  the national level, which contains objects that are
       recognized throughout a country;

  (2)  the regional level, which contains objects that are
       recognized throughout a state or state-equivalent; and,

  (3)  the local level, which contains objects that are
       recognized within a populated place.

3.1.  Naming at the National Level

  At the national-level (at least) three kinds of names may be listed:

  (1)  The States and State-Equivalents

  (2)  Organizations with National Standing

  (3)  ADDMD Operators

3.1.1.  The States and State-Equivalents

  For each state or state-equivalent (the District of Columbia and the
  eight outlying areas [Footnote: i.e., American Samoa, Federated
  States of Micronesia, Guam, Marshall Islands, Northern Mariana
  Islands, Palau, Puerto Rico, and Virgin Islands of the US.]), an
  instance of an

              usStateOrEquivalent

         object is used.  The RDN is formed as

              localityName is <FIPS 5 name>

         e.g.,

              localityName is California

  provides the RDN for the State of California.  In addition, this
  entry would contain attributes identifying both the FIPS 5 alpha and
  numeric code for the State, e.g.,




NADF                                                            [Page 4]

RFC 1218                A Naming Scheme for c=US              April 1991


               fipsStateNumericCode is 06
               fipsStateAlphaCode is CA

  Of course, this entry could contain many other attributes such as

               stateOrProvinceName is State of California

3.1.2.  Organizations with National Standing

  There is no authority in the United States which unambiguously
  registers the alphanumeric names of organizations with national
  standing.  It is proposed that ANSI provide this registry and that
  the ANSI alphanumeric name form be used as the basis for RDNs.

  For each organization with national standing, an instance of an

              usOrganization

         object is used.  The RDN is formed as

              organizationName is <ANSI alphanumeric name form>

         e.g.,

              organizationName is Performance Systems International

  In addition, this entry would contain attributes identifying the ANSI
  Alphanumeric name form, e.g.,

               ansiOrgNumericCode is 177777

  Of course, this entry would contain many other attributes such as

               organizationName is PSI

  For the National Government, an instance of an

               organization

  object is also used, and the RDN is taken from the ANSI alphanumeric
  name form registry.

3.1.3.  ADDMD Operators

  There is no authority in the United States which unambiguously
  registers the names of ADDMD operators.  It is expected that the
  North American Directory Forum will coordinate with the US CCITT
  National Committee Study Group D to provide this registry.  (At



NADF                                                            [Page 5]

RFC 1218                A Naming Scheme for c=US              April 1991


  worst, the ADDMDs can use ANSI alphanumeric name forms for their RDN
  attribute values.)

         For each ADDMD operator, an instance of a

              nadfADDMD

         object is used.  The RDN is formed as

              addmdName is <NADF registered name>

         e.g.,

              addmdName is PSINet

3.2.  Naming within a State or State-Equivalent

  At the regional level (at least) two kinds of names may be listed:

  (1)  Populated Places

  (2)  Organizations with Regional Standing

3.2.1.  Populated Places

  For each populated place within a state or state-equivalent,
  an instance of an

              usPlace

         object is used.  The RDN is formed as

              localityName is <FIPS 55 name>

         e.g.,

              localityName is Hartford

  provides the RDN for the Hartford entry immediately subordinate to
  the usStateOrEquivalent entry for the State of Connecticut.  In
  addition, this entry would contain attributes identifying the FIPS 55
  place code, e.g.,

               usPlaceCode is 37000







NADF                                                            [Page 6]

RFC 1218                A Naming Scheme for c=US              April 1991


3.2.2.  Organizations with Regional Standing

  An organization is said to have regional standing if it is registered
  with the "Secretary of State" or similar entity within that region,
  as an entity doing business in the region.

  For each organization with regional standing, an instance of an

              organization

         object is used.  The RDN is formed as

              organizationName is <registered name of organization>

         e.g.,

              organizationName is Network Management Associates

  might provide the RDN for a business entity registered with the State
  of California.  In this case, the entry thus named would be
  immediately subordinate to the usStateOrEquivalent entry for the
  State of California.

  Note that other non-distinguished attributes, such as an ANSI numeric
  name form value, may be included in such an entry --- the
  organization object might actually be a usOrganization object.

  For the Regional Government, an instance of an

              organization

         object is also used.  The RDN is formed as:

              organizationName is Government

3.3.  Naming within a Populated Place

  At the local level (at least) three kinds of names may be listed:

  (1)  Persons

  (2)  Organizations with Local Standing

  (3)  MHS Distribution Lists







NADF                                                            [Page 7]

RFC 1218                A Naming Scheme for c=US              April 1991


3.3.1.  Naming of Persons

  Within a populated place, there is no centralized naming entity which
  registers residential persons.  It is proposed that entries for
  persons be immediately subordinate to the usPlace object which most
  accurately reflects their place of residence.

  For each person (wishing to have an entry in the Directory), an
  instance of a residentialperson

              residentialPerson

         object is used.  The RDN is usually multi-valued, formed with

              commonName is <person's full name>

  and some other attribute, such as postalCode, streetAddress, etc.
  However, because streetAddress is often considered private
  information, based on agreement with the entity managing the DMD and
  the listed person, some other, distinguishing attribute may be used,
  including a "serial number" (having no other purpose).  It should be
  noted however that this is non-helpful in regards to searching,
  unless other attribute values containing meaningful information are
  added to the entry and made available for public access.

3.3.2.  Organizations with Local Standing

  An organization is said to have local standing if it is registered
  with the County or City Clerk or similar entity within that locality
  as an entity "doing business" in that place.

  For each organization with local standing, an instance of an

              organization

         object is used.  The RDN is formed as

              organizationName is <registered name of organization>

         e.g.,

              organizationName is The Tied House

  might provide the RDN for a business entity registered with the City
  of Mountain View.  In this case, the entry thus named would be
  immediately subordinate to the usPlace entry for the City of Mountain
  View.




NADF                                                            [Page 8]

RFC 1218                A Naming Scheme for c=US              April 1991


  Note that other non-distinguished attributes, such as an ANSI numeric
  name form value, may be included in an entry.  (That is, the
  organization object might actually be a usOrganization object.)

         For the Local Government, if any, an instance of an

              organization

         object is also used.  The RDN is formed as:

              organizationName is Government

3.4.  Naming of MHS Distribution Lists

  Naming of MHS distribution lists remains with the scoping DMD.

4.  Optimized Civil Naming

  The structure of the civil component of the architecture can be
  concisely described as:

----------------------------------------------------------------------
Level   Element   objectClass             Superior    RDN
----------------------------------------------------------------------
root    0
----------------------------------------------------------------------
intl.   1         country                 0           countryName
----------------------------------------------------------------------
natl.   2         usStateOrEquivalent     1           localityName
       3         usOganization           1           organizationName
       4         nadfADDMD               1           addmdName
----------------------------------------------------------------------
reg.    5         usPlace                 2           localityName
       6         organization            2           organizationName
----------------------------------------------------------------------
local   7         residentialPerson       5           commonName,
                                                     other
       8         organization            5           organizationName
       9         mhsDistributionList     5           commonName
----------------------------------------------------------------------

  Consider how an interrogation algorithm might locate a residential
  person, given:

  (1)  a string denoting the person's real-world name;

  (2)  a string denoting the real-world name of the populated
       place in which the person lives; and,



NADF                                                            [Page 9]

RFC 1218                A Naming Scheme for c=US              April 1991


  (3)  the Distinguished Name of the state or state-equivalent.

  A straight-forward approach is to initiate a single-level search to
  locate the desired populated place.  The search results in zero or
  more Distinguished Names being returned which correspond to the
  string provided by the user.  Then, for each populated place, a
  subtree search might be initiated to locate the desired residential
  person.  If the number of populated places returned by the first
  search is large, then this strategy is inefficient.

  A better approach would be to initiate a single search, with a filter
  combining the strings for both the person's real-world name and the
  place's real-world name.  Unfortunately, such a search would have to
  involve the whole-subtree anchored at the Distinguished Name for the
  state or state-equivalent, which would be inefficient.

  As such, it may be desirable to optimize the civil naming component
  by listing some entries at a higher level.  This is accomplished by
  using a multi-valued RDN formed by combining the RDNs of the entry
  and its superior.

  There are three cases in civil naming:

  (1)  listing an organization with regional standing at the
       national level;

  (2)  listing an organization with local standing at the
       regional level; and,

  (3)  listing a person with local standing at the regional
       level.

  Hence, under the optimized civil naming component, a single-level
  search, anchored at the Distinguished Name for the state or state-
  equivalent, could be used.  Further, the implementation of a DSA
  supporting this optimization would highly-index the attributes used
  for searching, in order to achieve high-performance.

  In order to clearly indicate that optimized civil naming is in
  effect, a new attribute type, nadfSearchGuide, is introduced.  An
  attribute value of this type is placed in an entry to indicate which
  optimizations are in effect.  Using the residential example above,
  the entry for the state or state-equivalent would contain an
  nadfSearchGuide value indicating that when searching for entries of
  type residentialPerson, a single-level search should be performed
  with a filter containing the logical-and of two terms, one involving
  the commonName attribute, and the other involving the localityName
  attribute.  The nadfSearchGuide is a refinement of the X.500



NADF                                                           [Page 10]

RFC 1218                A Naming Scheme for c=US              April 1991


  searchGuide in that it indicates the depth of the search which should
  be performed, and always contains an indication of the object class
  for which the optimization exists.

  Finally, note that for naming within organizations, this technique
  might also be used.

4.1.  Naming at the National Level

4.1.1.  Organizations with Regional Standing

  An organization with standing within a state or state-equivalent may
  be listed directly under c=US.

  For an organization with regional standing, an instance of an

              organization

         object is used.  The RDN is multi-valued, formed as

              organizationName is <registered name of organization>
              localityName is <FIPS 5 name>

         e.g.,

              organizationName is Network Management Associates
              localityName is California

  It must be emphasized that uniqueness within the RDN comes from using
  the a regional localityName (state or state-Equivalent) in
  association with the correspondent organizationName in that region.

4.2.  Naming within a State or State-Equivalent

4.2.1.  Organizations with Local Standing

  An organization with standing within a populated place may be listed
  directly under its state or state-equivalent.

  For an organization with local standing, an instance of an

              organization

         object is used.  The RDN is multi-valued, formed as

              organizationName is <registered name of organization>
              localityName is <FIPS 55 name>




NADF                                                           [Page 11]

RFC 1218                A Naming Scheme for c=US              April 1991


         e.g.,

              organizationName is The Tied House
              localityName is City of Mountain View

  It must be emphasized that uniqueness within the RDN comes from using
  the a local localityName (populated place) in association with the
  correspondent organizationName in that place.

4.2.2.  Persons

  An person may be listed directly under its state or state-equivalent.

  For such a person, an instance of a

               residentialPerson

  object is used.  The RDN is multi-valued, formed by taking the RDN of
  the person and adding the RDN of the populated place containing the
  person.

               commonName is the Marshall T. Rose
               postalCode is 94043-2112
               localityName is City of Mountain View

  Note that for optimization to occur, the RDN of the person must not
  contain a localityName attribute value.

5.  Organizational Naming

  The internal structure of each usOrganization or organization object
  is a matter for that organization to establish.

  It is strongly recommended that organizationalUnit objects be used
  for structuring.  (If an organization uses a locality-based
  organizational hierarchy, this information can still be represented
  using the

              organizationalUnit

         object.)

6.  ADDMD Naming

  The internal structure of each nadfADDMD object is a matter for that
  service-provider to establish.





NADF                                                           [Page 12]

RFC 1218                A Naming Scheme for c=US              April 1991


7.  Application Naming

  There are (at least) four kinds of OSI entities which may be listed:

  (1)  Application Processes and Entities

  (2)  MHS Distribution Lists

  (3)  EDI Users

  (4)  Devices

7.1.  Naming of Application Processes and Entities

  Naming of OSI application processes and entities remains with the
  scoping DMD.  However, in order to foster interoperability, two
  requirements are made: first, application entity objects must be
  immediately subordinate to application process objects; and, second,
  application entities are represented by the nadfApplicationEntity
  object, which is identical to the applicationEntity object except
  that the presence of an attribute value of
  supportedApplicationContext is mandatory.

7.2.  Naming of MHS Distribution Lists

  Naming of MHS distribution lists remains with the scoping DMD.

7.3.  Naming of EDI Users

  Naming of EDI users remains with the scoping DMD.

7.4.  Naming of Devices

  Naming of OSI devices remains with the scoping DMD.

8.  Usage Examples

  Consider the following examples, expressed in a concise format (read
  left-to-right):

         Federal Government:

              { c=US, o=Government }


         The State of California:

              { c=US, l=California }



NADF                                                           [Page 13]

RFC 1218                A Naming Scheme for c=US              April 1991


         The District of Columbia:

              { c=US, l=District of Columbia }


         An organization with national standing:

              { c=US, o=Performance Systems International }


         An ADDMD:

              { c=US, addmdName=PSINet }


         The Government of the State of California:

              { c=US, l=California, o=Government }


         The Government of the District of Columbia:

              { c=US, l=District of Columbia, o=Government }


         A city within the State of California:

              { c=US, l=California, l=City of Mountain View }


         An organization licensed to operate within the State of
         California:

              { c=US,
                l=California,
                o=Network Management Associates, Inc. }


         An optimized listing for a organization with regional
         standing:

              { c=US,
                { l=California,
                  o=Network Management Associates }}







NADF                                                           [Page 14]

RFC 1218                A Naming Scheme for c=US              April 1991


         A city government:

              { c=US,
                l=California,
                l=City of Mountain View,
                o=Government }


         A residential person:

              { c=US,
                l=California,
                l=City of Mountain View,
                { cn=Marshall T. Rose, postalCode=94043-2112 }}


         An organization licensed to operate within a city:

              { c=US,
                l=California,
                l=City of Mountain View,
                o=The Tied House }


         An entity within the Federal Government:

              { c=US, o=Government, ou=Department of the Air Force }


         An entity within an organization with national standing:

              { c=US,
                o=Performance Systems International,
                ou=Marketing }

9.  Acknowledgements

  This document is based on many sources, including, but not limited
  to:

  - Listing Services Database Generic Requirements, Bellcore
    TA-TSY-000985;

  - Common Directory Use ED 013 (Q/511) (EWOS/EGDIR/90/156);
    and,

  - The THORN X.500 Naming Architecture (UCL-45 revision 6.1).




NADF                                                           [Page 15]

RFC 1218                A Naming Scheme for c=US              April 1991


10.  Bibliography

  X.500: The Directory --- Overview of Concepts, Models, and
       Service, CCITT Recommendation X.500, December, 1988.

  US FIPS 5: Codes for the Identification of the States, The
       District of Columbia and Outlying Areas of the United
       States, and Associated Areas, US Department of Commerce
       FIPS 5--2, May 28, 1987.

  US FIPS 6: Counties and Equivalent Entities of the United
       States, its Possessions, and Associated Areas, US
       Department of Commerce FIPS 6--4, August 31, 1990.

  US FIPS 55: Guideline: Codes for Named Populated Places,
       Primary County Divisions, and other Locational Entities
       of the United States and Outlying Areas, US Department of
       Commerce FIPS 55--2, February 3, 1987.

  The NADF is soliticting comments on this naming scheme.  Comments
  should be directed to:

              Postal:         Dr. Marshall T. Rose
                              Performance Systems International
                              5201 Great American Parkway
                              Suite 3106
                              Santa Clara, CA  95054
                              US
              Telephone:      +1 408 562 6222
              Fax:            +1 408 562 6223
              Internet:       [email protected]
              X.500:          rose, psi, us

  Comments should be received prior to July 1, 1991.

Appendix A:  Naming Architecture

  There are two aspects to the naming architecture: a DIT structure and
  a set of related Schema definitions.  These are shown on pages 17 and
  18, respectively.











NADF                                                           [Page 16]

RFC 1218                A Naming Scheme for c=US              April 1991


DIT Structure

----------------------------------------------------------------------
Level   Element   objectClass             Superior    RDN
----------------------------------------------------------------------
root    0
----------------------------------------------------------------------
intl.   1         country                 0           countryName
----------------------------------------------------------------------
natl.   2         usStateOrEquivalent     1           localityName
       3         usOganization           1           organizationName
       4         nadfADDMD               1           addmdName
----------------------------------------------------------------------
reg.    5         usPlace                 2           localityName
       6         organization            2           organizationName
----------------------------------------------------------------------
local   7         residentialPerson       5           commonName,
                                                     other
       8         organization            5           organizationName
       9         mhsDistributionList     5           commonName
----------------------------------------------------------------------
----------------------------------------------------------------------
opt.    6*        organization            1          organizationName,
                                                    localityName
       7*        residentialPerson       2          commonName,
                                                    other,
                                                    localityName
       8*        organization            2          organizationName,
                                                    localityName
----------------------------------------------------------------------
----------------------------------------------------------------------
org.    10**      organizationalUnit      3,6,8,10,11 orgUnitName
       11**      locality                3,6,8,10,11 localityName
       12**      organizationalRole      3,6,8,10,11 commonName
       13**      organizationalPerson    3,6,8,10,11 commonName
----------------------------------------------------------------------
----------------------------------------------------------------------
appl.   14        applicationProcess      3,6,8,10,11 commonName
       15        nadfApplicationEntity   14          commonName
       16        mhsDistributionList     3,6,8,10,11 commonName
       17        ediUser                 3,6,8,10,11 ediName
       18        device                  3,6,8,10,11 commonName
----------------------------------------------------------------------

  * = These are the optimized form of the corresponding element in the
  civil component.

  ** = This scheme makes no requirements on the DIT structure within an



NADF                                                           [Page 17]

RFC 1218                A Naming Scheme for c=US              April 1991


  organization.  The organizational structure shown here is only for
  exposition.  For example, MHS objects are not listed beneath the
  organizational level, though they are likely to occur within an
  organization.

Schema Definitions

        NADF-SCHEMA { joint-iso-ccitt mhs(6) group(6) al-grimstad(5)
                      nadf(1) schema(1) }

        DEFINITIONS ::= BEGIN

        IMPORTS
            OBJECT-CLASS, ATTRIBUTE
                FROM InformationFramework
                    { joint-iso-ccitt ds(5) module(1)
                          informationFramework(1) }
            caseIgnoreStringSyntax, Criteria
                FROM SelectedAttributeTypes
                    { joint-iso-ccitt ds(5) module(1)
                          selectedAttributeTypes(5) }
            locality, organization, applicationEntity, top
                FROM SelectedObjectClasses
                    { joint-iso-ccitt ds(5) module(1)
                          selectedObjectClasses(6) }
                ;


        nadf OBJECT IDENTIFIER ::= { joint-iso-ccitt mhs(6) group (6)
                                     al-grimstad(5) 1 }

        nadfModule          OBJECT IDENTIFIER ::= { nadf 1 }
        nadfAttributeType   OBJECT IDENTIFIER ::= { nadf 4 }
        nadfObjectClass     OBJECT IDENTIFIER ::= { nadf 6 }


        -- object classes

        usStateOrEquivalent OBJECT-CLASS
            -- localityName is used for RDN
            -- values come from US FIPS PUB 5
            SUBCLASS OF locality
            MUST CONTAIN { fipsStateNumericCode,
                           fipsStateAlphaCode,
                           stateOrProvinceName }
            MAY CONTAIN  { nadfSearchGuide }
            ::= { nadfObjectClass 1 }




NADF                                                           [Page 18]

RFC 1218                A Naming Scheme for c=US              April 1991


        usPlace OBJECT-CLASS
            -- localityName is used for RDN
            -- values come from US FIPS PUB 55
            SUBCLASS OF locality
            MUST CONTAIN { fipsPlaceNumericCode,
                           localityName }
            MAY CONTAIN  { nadfSearchGuide }
            ::= { nadfObjectClass 2 }

         usCounty OBJECT-CLASS
            SUBCLASS OF usPlace
            MUST CONTAIN { fipsCountyNumericCode }
            ::= { nadfObjectClass 3 }

        usOrganization OBJECT-CLASS
            -- organizationName is used for RDN
            -- values come from ANSI Alphanumeric Registry
            SUBCLASS OF organization
            MUST CONTAIN { ansiOrgNumericCode }
            MAY CONTAIN  { nadfSearchGuide }
            ::= { nadfObjectClass 4 }

        nadfApplicationEntity OBJECT-CLASS
            SUBCLASS OF applicationEntity
            MUST CONTAIN { supportedApplicationContext }
            ::= { nadfObjectClass 5 }

        nadfADDMD OBJECT-CLASS
            -- addmdName is used for RDN
            -- values come from NADF Registry (tbd)
            SUBCLASS OF top
            MUST CONTAIN { addmdName }
            MAY CONTAIN  { nadfSearchGuide }
            ::= { nadfObjectClass 6 }


        -- auxiliary classes

        nadfObject OBJECT-CLASS
            SUBCLASS OF top
            MAY CONTAIN { supplementaryInformation }
            ::= { nadfObjectClass 7 }









NADF                                                           [Page 19]

RFC 1218                A Naming Scheme for c=US              April 1991


        -- attribute types

        fipsStateNumericCode ATTRIBUTE

                -- semantics and values defined in US FIPS PUB 5
            WITH ATTRIBUTE-SYNTAX
                            -- leading zero is significant
                NumericString (SIZE (2))
                MATCHES FOR EQUALITY
            ::= { nadfAttributeType 1 }

        fipsStateAlphaCode ATTRIBUTE
                -- semantics and values defined in US FIPS PUB 5
            WITH ATTRIBUTE-SYNTAX
                PrintableString (SIZE (2))
                MATCHES FOR EQUALITY      -- case-insensitive
            ::= { nadfAttributeType 2 }

        fipsCountyNumericCode ATTRIBUTE
                -- semantics and values defined in US FIPS PUB 6
            WITH ATTRIBUTE-SYNTAX
                            -- leading zeros are significant
                NumericString (SIZE (3))
                MATCHES FOR EQUALITY
            ::= { nadfAttributeType 3 }

        fipsPlaceNumericCode ATTRIBUTE
                -- semantics and values defined in US FIPS PUB 55
            WITH ATTRIBUTE-SYNTAX
                            -- leading zeros are significant
                NumericString (SIZE (5))
                MATCHES FOR EQUALITY
            ::= { nadfAttributeType 4 }

        ansiOrgNumericCode ATTRIBUTE
                -- semantics and values defined in ANSI registry
            WITH ATTRIBUTE-SYNTAX
                INTEGER
                MATCHES FOR EQUALITY
            ::= { nadfAttributeType 5 }

        addmdName ATTRIBUTE
                -- semantics and values defined in NADF registry
            WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
            ::= { nadfAttributeType 6 }






NADF                                                           [Page 20]

RFC 1218                A Naming Scheme for c=US              April 1991


        nadfSearchGuide ATTRIBUTE
            WITH ATTRIBUTE-SYNTAX NadfGuide
            ::= { nadfAttributeType 7 }

        NadfGuide ::=
            SET {
                objectClass[0]
                    OBJECT-CLASS,
                criteria[1]
                    Criteria,
                subset[2]
                    INTEGER {
                        baseObject(0), oneLevel(1), wholeSubtree(2)
                    } DEFAULT oneLevel
            }

        supplementaryInformation ATTRIBUTE
            WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax (SIZE (1..76))
            ::= { nadfAttributeType 8 }

        END

Appendix B:  Revision History of this Scheme

  The first version of this scheme (NADF-71) was contributed to the
  North American Directory Forum at its November 27--30, 1990 meeting.
  The (mis)features were:

  (1)  Because of the lack of confidence in ANSI registration
       procedures, it was proposed that the US trademarks be
       used as the basis for RDNs of organizations with
       national-standing.

       This proved unworkable since the same trademark may be
       issued to different organizations in different
       industries.

  (2)  There was no pre-existing registry used for populated
       places.

       This proved unworkable since the effort to define a new
       registry is problematic.

  The second version of this scheme was contributed to the ANSI
  Registration Authority Committee at its January 30, 1991 meeting, and
  the IETF OSI Directory Services Working Group at its February 12--13,
  1991 meeting.  The (mis)features were:




NADF                                                           [Page 21]

RFC 1218                A Naming Scheme for c=US              April 1991


  (1)  The ANSI numeric name form registry was used as the basis
       for RDNs of organizations with national standings.

  (2)  The FIPS 5 state numeric code was used as the basis for
       RDNs of states and state-equivalents.

  (3)  The FIPS 55 place numeric code was used as the basis for
       RDNs of populated places.

  The choice of numeric rather than alphanumeric name forms was
  unpopular, but was motivated by the desire to avoid using the ANSI
  alphanumeric name form registry, which was perceived as unstable.

  The third version of this scheme was contributed to US State
  Department Study Group D's MHS-MD subcommittee at its March 7--8 1991
  meeting.  That version used alphanumeric name forms for all objects,
  under the perception that the ANSI alphanumeric name form registry
  will prove stable.  If the ANSI alphanumeric name form registry
  proves unstable, then two alternatives are possible:

  (1)  disallow organizations with national-standing in the US
       portion of the DIT; or,

  (2)  use the ANSI numeric name form registry instead.

  Hopefully neither of these two undesirable alternatives will prove
  necessary.

  The fourth version of this scheme (NADF-103) was contributed to the
  North American Directory Forum at its March 18--22, 1990 meeting.
  This version introduced the notion of organizations with regional
  standing being listed at the national level through the use of alias
  names and multi-valued RDNs.

  The current (fifth) version of this scheme (NADF-123) generalized the
  listing concept by introducing the notion of optimized civil naming.
  Further, the document was edited to clearly note the different naming
  components and the relation between them.













NADF                                                           [Page 22]

RFC 1218                A Naming Scheme for c=US              April 1991


Security Considerations

  Security issues are not discussed in this memo.

Author's Address

  North American Directory Forum
  c/o Theodore H. Myer
  Rapport Communication, Inc.
  3055 Q Street NW
  Washington, DC  20007

  Tel: +1 202-342-2727






































NADF                                                           [Page 23]