|
|
1.1 root 1: -- This specification is in BNF
2: -- Comments start with two dashes
3:
4: <a> ::= any of the 52 upper and lower case IA5 letters
5: <d> ::= any IA5 digit 0-9
6: <k> ::= any of th 52 upper and lower case IA5 letters, IA5 digits,
7: and "-" (hyphen)
8: <p> ::= any IA5 character in ASN.1 PrintableSting
9: <CRLF> ::= IA5 Newline
10: <letterstring> ::= <a> | <a> <letterstring>
11: <numericstring> ::= <d> | <d> <numericstring>
12: <keystring> ::= <k> | <k> <keystring>
13: <printablestring> ::= <p> | <p> <printablestring>
14: -- The first notation is to specify Object Identifiers.
15: -- These have the basic (BNF):
16:
17: <numericoid> ::= <numericstring> | <numericstring> "." <numericoid>
18:
19:
20: -- We define a table which gives a mapping of generic OIDs to strings:
21: -- and a possible abbreviated form of the name
22:
23: <oidkeytable> ::= <oidkeyentry> | <oidkeyentry> <CRLF> <oidkeytable>
24: <oidkeyentry> ::= <abbrstring> ":" <numericoid>
25: <abbrstring> ::= <keystring> | <keystring> "," <keystring>
26:
27: -- For example:
28: -- UCL :0.3.2342.19200149
29: -- country,c :2.5.4.6
30:
31: -- Tables of this form will be read in by every QUIPU DSA, to give it a set
32: -- of OID strings forms, and abbreviations
33:
34: -- A general BNF of oid is now given:
35:
36: <oid> ::= <keystring> "." <numericoid> | <keystring> | <numericoid>
37:
38: -- For example, ``UCL.5'' gives OID 5 as allocated by UCL, ``C'' gives the
39: -- standard country oid.
40:
41: - We define a table for attribute values:
42:
43: <attrTable> ::= <attrEntry> | <attrEntry> <CRLF> <attrTable>
44: <attrEntry> ::= <oidkeyentry> ":" <attrEncoding>
45: <attrEncoding> ::= "ObjectClass" | "DN" | "CaseIgnoreString" |
46: "CaseExactString" | "PrintableString" | "CountryString" |
47: "Guide" | "PostalAddress" | "TelephoneNumber" |
48: "telexNumber" | "TelexTerminalIdentifier" |
49: "FacsimileTelephoneNumber" | "NumbericString" |
50: "DestinationString" | "PresentationAddress" |
51: "OID" | "OctetString" | "IA5String" | "Photo" |
52: "Mailbox" | "UTCTime" | "DeliveryMethod"
53: "Integer" | "Boolean" | "Password"
54: "ACL" | "Schema" | "Update" |
55: <attrASN>
56:
57: <attrASN> ::= <keystring>
58: -- defined, but unknown syntax - treated as ``ASN''
59:
60: -- For example:
61: -- description: attributetype.13: CASEIGNORESTRING
62:
63: -- Finally we define an object class table:
64:
65: <ocTable> ::= <ocEntry> | <ocEntry> <CRLF> <ocTable>
66: <ocEntry> ::= <ocData> | <ocMacro>
67: <ocData> ::= <oidkeyentry> ":" <strList> ":" <strList> ":" <strList>
68: -- :(hierarchy):(must contain):(may contain)
69: <ocMacro> :: = <keystring> "=" <strList>
70:
71: <strList> ::= <keystring> | <keystring> "," <strList> |
72: -- Note the final `|' to permit the null string
73:
74: -- For example;
75: -- localeAttributeSet = facsimileNumber,isdnAddress,telephoneNumber, ...
76: -- country: objectclass.2 : top: countryname: description,searchguide
77: -- organisationalPerson: person: : localeAttributeSet,OU,title,...
78:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.