Attribute Syntaxes and Flags

Novell Directory Services (NDS) attributes consist of a unique name, a syntax, and one or more flags. You can use the following syntaxes and flags for creating attributes:

ATTRIBUTE SYNTAXES

Back Link. The Back Link attribute uses this syntax to keep track of other servers that refer to an NDS object. NDS uses the Back Link syntax for internal management.

Boolean. An attribute uses this syntax if the attribute's value is either True, which is represented as one (1), or False, which is represented as zero (0). The Single Valued flag is set for the Boolean syntax.

Case Exact String. An attribute uses this syntax if the attribute's value is a Unicode string that is case sensitive in comparison operations. Two Case Exact Strings match if they are the same length and their corresponding characters, including case, are identical.

Case Ignore List. An attribute uses this syntax if the attribute's value is an ordered sequence of Unicode string that is not case sensitive in comparison operations. Two Case Ignore Lists match if their corresponding strings match. These corresponding strings match if they are the same length and their corresponding characters are identical in all respects except case.

Case Ignore String. An attribute uses this syntax if the attribute's value is a Unicode string that is not case sensitive in comparison operations. Two Case Ignore Strings match if they are the same length and their corresponding characters are identical in all respects except case.

Class Name. An attribute uses this syntax if the attribute's value is a class name. Two Class Names match if they are the same length and their corresponding characters are identical in all respects except case.

Counter. An attribute uses this syntax if the attribute's value is an incrementally modified, numeric signed integer. Any attribute defined using the Counter syntax is flagged as Single Valued. The Counter syntax differs from the Integer syntax in that any value added to an attribute that uses the Counter syntax is added to the total, and any value deleted is subtracted from the total.

Distinguished Name. An attribute uses this syntax if the attribute's value is the name of an NDS object. A Distinguished Name is not case sensitive, even if one of the naming attributes is case sensitive.

Email Address. An attribute uses this syntax if the attribute's value is a string of binary information. NDS makes no assumption about the internal structure of the content of the Email Address syntax.

Facsimile Telephone Number. An attribute uses this syntax if the attribute's value is a fax number. This syntax specifies a string that complies with the format agreed upon for storing international telephone numbers--E.123--and an optional bit string formatted according to the T.30 recommendation. Facsimile Telephone Number values are matched based on the telephone number field. The Facsimile Telephone Number syntax uses the same matching rules as the Case Exact String syntax except that all space and hyphen characters are ignored during comparison operations.

Hold. An attribute uses this syntax if the attribute is an accounting quantity, whose value is a numeric signed integer. An accounting quantity is an amount tentatively held against a subject's credit limit, pending completion of a transaction. The Hold syntax is treated in a similar manner as the Counter syntax: New values are added to or subtracted from the base total. If the Hold amount is reduced to zero, the Hold record is deleted.

Integer. An attribute uses this syntax if the attribute is represented by a numeric signed integer. Two Integers match if they are identical. In comparison operations, the Integer syntax uses the numeric signed integer rules (any positive or negative whole number, including zero).

Interval. An attribute uses this syntax if the attribute's value is a signed numeric integer that represents intervals of time. (Intervals use the same representation as Integers.) The interval value is the number of seconds in a time interval.

Net Address. An attribute uses this syntax if the attribute's value is a network-layer address in the IntranetWare and NetWare environment. The address is expressed in a binary format. Two Net Addresses match if the type, length, and value of the addresses match.

Numeric String. An attribute uses this syntax if the attribute's value is a numeric string as defined in the CCITT X.208 definition of Numeric String. Digits (0 to 9) and spaces are the only valid characters in the Numeric String character set. Two Numeric Strings match if the strings are the same length and their corresponding characters are identical.

Object ACL. An attribute uses this syntax if the attribute's value represents an Access Control List (ACL) entry in the NDS tree. An Object ACL value is used to control access to either an NDS object or an attribute.

Octet List. An attribute uses this syntax if the attribute's value is an ordered sequence of binary information. (This syntax describes an ordered sequence of strings of binary information, or an Octet String.) An Octet List matches a stored list if the Octet List is a subset of the stored list (thus, the Approximate Equals matching rule applies). The Octet List syntax uses the same matching rules as the Octet String syntax.

Octet String. An attribute uses this syntax if the attribute's value is a string of binary information that is not interpreted by NDS. An Octet String is a non-Unicode string. Two Octet Strings match if they are the same length and the corresponding bit sequences, or octet, are identical.

Path. An attribute uses this syntax if the attribute represents a file system path that contains the information needed to locate a file on an IntranetWare or NetWare server. The Path syntax uses the same matching rules as the Case Exact String syntax.

Postal Address. An attribute uses this syntax if the attribute's value is a Unicode string of a Postal Address. An attribute value for this syntax is typically composed of selected attributes from version 1 of the Message Handling Service (MHS) Unformatted Postal O/R Address specification, according to the f.401 recommendation. The value is limited to six lines of 30 characters each, including a Postal Country Name. The Postal Address syntax uses the same matching rules as the Case Ignore List syntax.

Printable String. An attribute uses this syntax if the attribute's value is a printable string, as defined in CCITT X.208. The printable character set includes upper- and lower-case alphabetic characters, digits (0 to 9), spaces, apostrophes, left and right parentheses, plus (+) signs, commas, hyphens, full stops (periods), solidus (forward slashes), colons, equals signs (=), and question marks. Two Printable Strings match if they are the same length and their corresponding characters are identical.

Replica Pointer. An attribute uses this syntax if the attribute's value represents a replica of an NDS partition. This syntax has six components: server name, replica type (Master, Secondary, Read-only, or Subordinate Reference), replica number, replica root ID, number of address, and address record.

Stream. An attribute uses this syntax if the attribute's value is a file stored on an IntranetWare or NetWare 4 server. For example, login scripts and other stream attributes use this syntax. The data stored in a stream file has no syntax enforcement of any kind. This data is purely arbitrary, defined by the application that created and uses it.

Telephone Number. An attribute uses this syntax if the attribute's value is a telephone number. The length of Telephone Numbers must be between one and 32 characters. The Telephone Number syntax uses the same matching rules as the Case Exact String syntax, except that all spaces and hyphen characters are ignored during comparison operations.

Time. An attribute uses this syntax if the attribute's value is an unsigned integer that represents time expressed in seconds. The Time syntax uses the same representation as the Integer syntax. The Time syntax also uses the unsigned integer rules (any positive whole number including zero).

Timestamp. An attribute uses this syntax if the attribute's value marks the time when a particular event occurred. When an event occurs, an NDS server makes a new Timestamp value and associates the value with the event. Every Timestamp value is unique within an NDS partition, providing a complete sequence of events that occur on all servers holding replicas of a partition.

Typed Name. An attribute uses this syntax if the attribute's value represents a level and an interval associated with an object. This syntax names an NDS object and attaches two numeric values to this object:

Unknown. An attribute uses this syntax if the attribute's definition has been deleted from the NDS schema. This syntax represents strings of binary information.

ATTRIBUTE FLAGS

Single Valued. This flag indicates that the selected syntax can have only one value. In some cases, multiple values of a syntax (for example, Boolean) do not make sense, and NDS automatically sets this flag.

String. NDS automatically sets the String flag for all string-type syntaxes. The String syntax is a type of string that supports string matching rules. Only a string-type syntax can be used to define naming attributes for a class.

Synchronize Immediate. If this flag is set, NDS immediately schedules any changes made to the attribute to be synchronized with other replicas of the NDS partition. If this flag is not set, NDS synchronizes the changes at a later time when other changes can be bundled together.

Public Read. If this flag is set, the attribute allows other NDS objects to read its value, regardless of any restrictions. These objects do not have to be authenticated to NDS.

Write Managed. If this flag is set, the NDS object can manage the attribute. The object can modify the attribute regardless of any restrictions.

Per Replica. If this flag is set, the value of an NDS object can be different on each replica of a partition.

Sized. Only syntaxes that logically support a sized feature can have this flag set. If the flag is set, a valid upper and lower limit for the attribute must be set. An upper limit of minus one (-1) specifies that no upper limit exists, and NDS enforces only the lower limit.