]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/nadf.schema
s/RFC2459/RFC3280/
[openldap] / servers / slapd / schema / nadf.schema
1 # nadf.schema -- NADF-defined schema
2 # $OpenLDAP$
3 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
4 ##
5 ## Copyright 1998-2005 The OpenLDAP Foundation.
6 ## All rights reserved.
7 ##
8 ## Redistribution and use in source and binary forms, with or without
9 ## modification, are permitted only as authorized by the OpenLDAP
10 ## Public License.
11 ##
12 ## A copy of this license is available in the file LICENSE in the
13 ## top-level directory of the distribution or, alternatively, at
14 ## <http://www.OpenLDAP.org/license.html>.
15
16 # These are definitions from the North American Directory Forum
17 # They are intended to be used with QUIPU/X.500 not LDAPv3.
18 # Your mileage may vary.
19
20 # They were acquired from ftp://ftp.gte.com/pub/nadf/nadf-docs/sd-04.ps
21 # Our thanks to Harald T. Alvestrand that provided the pointer.
22
23 # This is a preliminary version and is likely to be incorrect in
24 # a number of areas.  Use with exterme caution.
25
26 # The root for OIDs is joint-iso-ccitt mhs-motis(6) group(6) grimstad(5)
27 # nadf(2).  In othor words, barring any error, 2.6.6.5.2.  Then,
28 # nadfOink ::= 2.6.6.5.2.0
29 # nadfModule ::= 2.6.6.5.2.1
30 # nadfAttributeType ::= 2.6.6.5.2.4
31 # nadfObjectClass ::= 2.6.6.5.2.6
32
33 # Attribute Type Definition
34
35 attributetype ( 2.6.6.5.2.4.1 NAME 'fipsStateNumericCode'
36         EQUALITY numericStringMatch
37         SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{2} )
38
39 # It is probably inconvenient to give this attribute that syntax
40 # (Printable String) instead of Directory String.
41
42 attributetype ( 2.6.6.5.2.4.2 NAME 'fipsStateAlphaCode'
43         EQUALITY caseIgnoreMatch
44         SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{2} )
45
46 attributetype ( 2.6.6.5.2.4.3 NAME 'fipsCountyNumericCode'
47         EQUALITY numericStringMatch
48         SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{5} )
49
50 # It seems that fips55 is fipsPlaceNumericCode, is this so?
51
52 attributetype ( 2.6.6.5.2.4.4 NAME ( 'fipsPlaceNumericCode' 'fips55' )
53         EQUALITY numericStringMatch
54         SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{5} )
55
56 attributetype ( 2.6.6.5.2.4.5 NAME 'ansiOrgNumericCode'
57         EQUALITY integerMatch
58         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
59
60 # Apparently, 'ad' is an alias for 'addmdName'
61
62 attributetype ( 2.6.6.5.2.4.6 NAME ( 'addmdName' 'ad' )
63         EQUALITY caseIgnoreMatch
64         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
65
66 # I don't know what syntax to give this.  I will use binary for the
67 # time being.
68
69 attributetype ( 2.6.6.5.2.4.7 NAME 'nadfSearchGuide'
70         SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
71
72 attributetype ( 2.6.6.5.2.4.8 NAME 'supplementaryInformation'
73         EQUALITY caseIgnoreMatch
74         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{76} )
75
76 attributetype ( 2.6.6.5.2.4.9 NAME 'namingLink'
77         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
78
79 attributetype ( 2.6.6.5.2.4.10 NAME 'reciprocalNamingLink'
80         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
81         SINGLE-VALUE )
82
83 # Numbers 11 to 14 are obsolete
84
85 # Next one is unused.  BTW, this attribute is supposed to be
86 # case-exact match, but we cannot make that match unless we
87 # define the string with IA5 syntax and we don't have a
88 # clear base for this.
89
90 attributetype ( 2.6.6.5.2.4.15 NAME 'logicalDSAReference'
91         EQUALITY caseIgnoreMatch
92         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
93
94 attributetype ( 2.6.6.5.2.4.16 NAME 'multiMediaInformation'
95         SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
96
97 # Number 17, 18 and 19 are EDI-related attributes for the nadfEDIUser
98 # class that we did not have and has been left out below.
99
100 # Object classes
101
102 # According to the intended use described in section 3.3.1 in the spec,
103 # this can only be ABSTRACT.
104 # We had lastModifiedTime as 'allows', but sd-04 has it as MUST.
105 # We did not have multiMediaInformation neither on this class nor
106 # on any of its derived classes.
107
108 objectclass ( 2.6.6.5.2.6.7 NAME 'nadfObject' SUP top ABSTRACT
109         MUST lastModifiedTime
110         MAY ( multiMediaInformation $ nadfSearchGuide $
111         supplementaryInformation ) )
112
113 # I think all classes derived from locality should be considered
114 # STRUCTURAL, since locality is.
115
116 objectclass ( 2.6.6.5.2.6.1 NAME 'usStateOrEquivalent'
117         SUP ( locality $ nadfObject ) STRUCTURAL
118         MUST ( l $ fipsStateNumericCode $ fipsStateAlphaCode $ st ) )
119
120 objectclass ( 2.6.6.5.2.6.2 NAME 'usPlace'
121         SUP ( locality $ nadfObject ) STRUCTURAL
122         MUST ( l $ fipsPlaceNumericCode ) )
123
124 objectclass ( 2.6.6.5.2.6.3 NAME 'usCountyOrEquivalent' SUP usPlace STRUCTURAL
125         MUST fipsCountyNumericCode )
126
127 # applicationEntity is STRUCTURAL, so we will declare this one the same
128
129 objectclass ( 2.6.6.5.2.6.5 NAME 'nadfApplicationEntity'
130         SUP applicationEntity STRUCTURAL
131         MUST supportedApplicationContext )
132
133 # Following our heuristic, this one will be STRUCTURAL since organization
134 # is too.  We did not have 'o' as 'requires', but if this is really a
135 # subclass of organization, then 'o' becomes MUST by inheritance
136
137 objectclass ( 2.6.6.5.2.6.6 NAME 'nadfADDMD'
138         SUP ( organization $ nadfObject ) STRUCTURAL
139         MUST addmdName )
140
141 # Number 7 is nadfObject described above.
142
143 # This one quacks like an AUXILIARY object class
144
145 objectclass ( 2.6.6.5.2.6.8 NAME 'publicObject' SUP top AUXILIARY
146         MUST namingLink )
147
148 # And so does this one
149
150 objectclass ( 2.6.6.5.2.6.9 NAME 'providerObject' SUP top AUXILIARY
151         MUST reciprocalNamingLink )
152
153 # The spec says number 10 is obsolete
154
155 # This one also strongly smells like AUXILIARY
156
157 objectclass ( 2.6.6.5.2.6.11 NAME 'fips55Object' SUP top AUXILIARY
158         MUST fipsPlaceNumericCode
159         MAY st )
160
161 # The spec says numbers 12 to 18 are obsolete
162
163 # Another obviously AUXILIARY class
164
165 objectclass ( 2.6.6.5.2.6.19 NAME 'nationalObject' SUP top AUXILIARY
166         MUST c )
167
168 # So is this one
169
170 objectclass ( 2.6.6.5.2.6.20 NAME 'ansiOrgObject' SUP top AUXILIARY
171         MUST ansiOrgNumericCode )
172
173 # We did not have the next one, but it is innocuous
174
175 objectclass ( 2.6.6.5.2.6.21 NAME 'caProvinceOrTerritory'
176         SUP ( locality $ nadfObject ) STRUCTURAL
177         MUST st )
178
179 # According to the spec, numbers 22, 23 and 24 are obsolete
180
181 # Number 25 was nadfEDIuser as a subclass of edi-user.  Sorry we cannot
182 # deal with this one and we did not have it anyway.