Passa al contenuto principale

3.3. Definizioni di sintassi (L-U)

3.3.18. Descrizione della sintassi LDAP​

Un valore della sintassi LDAP Syntax Description (Descrizione della sintassi LDAP) è la descrizione di una sintassi LDAP. La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <SyntaxDescription> in [RFC4512].

La definizione LDAP per la sintassi LDAP Syntax Description è:

( 1.3.6.1.4.1.1466.115.121.1.54 DESC 'LDAP Syntax Description' )

La definizione LDAP per la sintassi LDAP Syntax Description sopra riportata è essa stessa un valore legale della sintassi LDAP Syntax Description.

Il tipo ASN.1 corrispondente alla sintassi LDAP Syntax Description è definito come segue, assumendo EXPLICIT TAGS:

LDAPSyntaxDescription ::= SEQUENCE {
identifier OBJECT IDENTIFIER,
description DirectoryString { ub-schema } OPTIONAL }

Il tipo ASN.1 parametrizzato DirectoryString è definito in [X.520].

Il valore di ub-schema (un intero) è specifico dell'implementazione. Una definizione non normativa appare in [X.520].

3.3.19. Descrizione della regola di corrispondenza​

Un valore della sintassi Matching Rule Description (Descrizione della regola di corrispondenza) è la definizione di una regola di corrispondenza. La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <MatchingRuleDescription> in [RFC4512].

Esempio:

( 2.5.13.2 NAME 'caseIgnoreMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

Nota: sono state aggiunte interruzioni di riga per leggibilità; non fanno parte della sintassi.

La definizione LDAP per la sintassi Matching Rule Description è:

( 1.3.6.1.4.1.1466.115.121.1.30 DESC 'Matching Rule Description' )

Questa sintassi corrisponde al tipo ASN.1 MatchingRuleDescription da [X.501].

3.3.20. Descrizione dell'uso della regola di corrispondenza​

Un valore della sintassi Matching Rule Use Description (Descrizione dell'uso della regola di corrispondenza) indica i tipi di attributo a cui una regola di corrispondenza può essere applicata in un filtro di ricerca extensibleMatch [RFC4511]. La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <MatchingRuleUseDescription> in [RFC4512].

Esempio: ( 2.5.13.16 APPLIES ( givenName $ surname ) )

La definizione LDAP per la sintassi Matching Rule Use Description è:

( 1.3.6.1.4.1.1466.115.121.1.31
DESC 'Matching Rule Use Description' )

Questa sintassi corrisponde al tipo ASN.1 MatchingRuleUseDescription da [X.501].

3.3.21. Nome e UID opzionale​

Un valore della sintassi Name and Optional UID (Nome e UID opzionale) è il nome distinto [RFC4512] di un'entità, opzionalmente accompagnato da un identificatore univoco utilizzato per differenziare tale entità da altre entità che hanno lo stesso nome distinto.

La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

NameAndOptionalUID = distinguishedName [ SHARP BitString ]

La regola <BitString> è definita nella Sezione 3.3.2. La regola <distinguishedName> è definita in [RFC4514]. La regola <SHARP> è definita in [RFC4512].

Si noti che sebbene il carattere '#' possa apparire nella rappresentazione di stringa di un nome distinto, non viene eseguito alcun escape aggiuntivo di tale carattere quando il <distinguishedName> è codificato in <NameAndOptionalUID>.

Esempio: 1.3.6.1.4.1.1466.0=#04024869,O=Test,C=GB#'0101'B

La definizione LDAP per la sintassi Name and Optional UID è:

( 1.3.6.1.4.1.1466.115.121.1.34 DESC 'Name And Optional UID' )

Questa sintassi corrisponde al tipo ASN.1 NameAndOptionalUID da [X.520].

3.3.22. Descrizione della forma del nome​

Un valore della sintassi Name Form Description (Descrizione della forma del nome) è la definizione di una forma del nome, che prescrive come una voce deve essere nominata. La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <NameFormDescription> in [RFC4512].

Esempio: ( 2.5.15.3 NAME 'orgNameForm' OC organization MUST o )

La definizione LDAP per la sintassi Name Form Description è:

( 1.3.6.1.4.1.1466.115.121.1.35 DESC 'Name Form Description' )

Questa sintassi corrisponde al tipo ASN.1 NameFormDescription da [X.501].

3.3.23. Stringa numerica​

Un valore della sintassi Numeric String (Stringa numerica) è una sequenza di una o più cifre e spazi. La codifica specifica LDAP di un valore di questa sintassi è la stringa di caratteri non convertita, che è conforme alla seguente ABNF:

NumericString = 1*(DIGIT / SPACE)

Le regole <DIGIT> e <SPACE> sono definite in [RFC4512].

Esempio: 15 079 672 281

La definizione LDAP per la sintassi Numeric String è:

( 1.3.6.1.4.1.1466.115.121.1.36 DESC 'Numeric String' )

Questa sintassi corrisponde al tipo ASN.1 NumericString da [ASN.1].

3.3.24. Descrizione della classe di oggetti​

Un valore della sintassi Object Class Description (Descrizione della classe di oggetti) è la definizione di una classe di oggetti. La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <ObjectClassDescription> in [RFC4512].

Esempio:

( 2.5.6.2 NAME 'country' SUP top STRUCTURAL MUST c
MAY ( searchGuide $ description ) )

Nota: sono state aggiunte interruzioni di riga per leggibilità; non fanno parte della sintassi.

La definizione LDAP per la sintassi Object Class Description è:

( 1.3.6.1.4.1.1466.115.121.1.37 DESC 'Object Class Description' )

Questa sintassi corrisponde al tipo ASN.1 ObjectClassDescription da [X.501].

3.3.25. Stringa di ottetti​

Un valore della sintassi Octet String (Stringa di ottetti) è una sequenza di zero, uno o più ottetti arbitrari. La codifica specifica LDAP di un valore di questa sintassi è la sequenza di ottetti non convertita, che è conforme alla seguente ABNF:

OctetString = *OCTET

La regola <OCTET> è definita in [RFC4512]. I valori di questa sintassi non sono generalmente leggibili dall'uomo.

La definizione LDAP per la sintassi Octet String è:

( 1.3.6.1.4.1.1466.115.121.1.40 DESC 'Octet String' )

Questa sintassi corrisponde al tipo ASN.1 OCTET STRING da [ASN.1].

3.3.26. OID​

Un valore della sintassi OID è un identificatore di oggetto: una sequenza di due o più interi non negativi che identifica in modo univoco un oggetto o un elemento di specifica particolare. Molti identificatori di oggetto utilizzati in LDAP hanno anche nomi registrati presso lo IANA [RFC4520].

La codifica specifica LDAP di un valore di questa sintassi è definita dalla regola <oid> in [RFC4512].

Esempio:

1.2.3.4
cn

La definizione LDAP per la sintassi OID è:

( 1.3.6.1.4.1.1466.115.121.1.38 DESC 'OID' )

Questa sintassi corrisponde al tipo ASN.1 OBJECT IDENTIFIER da [ASN.1].

3.3.27. Altra casella postale​

Un valore della sintassi Other Mailbox (Altra casella postale) identifica una casella postale elettronica in un particolare sistema di posta denominato. La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

OtherMailbox = mailbox-type DOLLAR mailbox
mailbox-type = PrintableString
mailbox = IA5String

La regola <mailbox-type> rappresenta il tipo di sistema di posta in cui risiede la casella postale (ad esempio "MCIMail"), e <mailbox> è la casella postale effettiva all'interno del sistema di posta descritto da <mailbox-type>. Le regole <PrintableString> e <IA5String> sono definite nella Sezione 3.2. La regola <DOLLAR> è definita in [RFC4512].

La definizione LDAP per la sintassi Other Mailbox è:

( 1.3.6.1.4.1.1466.115.121.1.39 DESC 'Other Mailbox' )

Il tipo ASN.1 corrispondente alla sintassi Other Mailbox è definito come segue, assumendo EXPLICIT TAGS:

OtherMailbox ::= SEQUENCE {
mailboxType PrintableString,
mailbox IA5String
}

3.3.28. Indirizzo postale​

Un valore della sintassi Postal Address (Indirizzo postale) è una sequenza di una o più stringhe di caratteri UCS arbitrari, che formano un indirizzo in un sistema postale fisico.

La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

PostalAddress = line *( DOLLAR line )
line = 1*line-char
line-char = %x00-23
/ (%x5C "24") ; escape "$"
/ %x25-5B
/ (%x5C "5C") ; escape "\"
/ %x5D-7F
/ UTFMB

Ogni stringa (cioè, <line>) di un valore Postal Address è codificata come una stringa UTF-8 [RFC3629], tranne per il fatto che i caratteri "" e "$", se appaiono nella stringa, sono preceduti da un carattere di escape "" seguito dal codice esadecimale a due cifre per il carattere. Le regole <DOLLAR> e <UTFMB> sono definite in [RFC4512].

Molti server limitano gli indirizzi postali a sei righe di non più di trenta caratteri ciascuna.

Esempio:

1234 Main St.$Anytown, CA 12345$USA
\241,000,000 Sweepstakes$PO Box 1000000$Anytown, CA 12345$USA

La definizione LDAP per la sintassi Postal Address è:

( 1.3.6.1.4.1.1466.115.121.1.41 DESC 'Postal Address' )

Questa sintassi corrisponde al tipo ASN.1 PostalAddress da [X.520]; cioè

PostalAddress ::= SEQUENCE SIZE(1..ub-postal-line) OF
DirectoryString { ub-postal-string }

I valori di ub-postal-line e ub-postal-string (entrambi interi) sono specifici dell'implementazione. Le definizioni non normative appaiono in [X.520].

3.3.29. Stringa stampabile​

Un valore della sintassi Printable String (Stringa stampabile) è una stringa di uno o più caratteri alfabetici latini, cifre e caratteri di punteggiatura selezionati, come specificato dalla regola <PrintableCharacter> nella Sezione 3.2.

La codifica specifica LDAP di un valore di questa sintassi è la stringa di caratteri non convertita, che è conforme alla regola <PrintableString> nella Sezione 3.2.

Esempio: This is a PrintableString.

La definizione LDAP per la sintassi Printable String è:

( 1.3.6.1.4.1.1466.115.121.1.44 DESC 'Printable String' )

Questa sintassi corrisponde al tipo ASN.1 PrintableString da [ASN.1].

3.3.30. Asserzione di sottostringa​

Un valore della sintassi Substring Assertion (Asserzione di sottostringa) è una sequenza di zero, una o più sottostringhe di caratteri utilizzate come argomento per la corrispondenza estensibile di sottostringhe su valori di attributo stringa; cioè, come matchValue di una MatchingRuleAssertion [RFC4511]. Ogni sottostringa è una stringa di uno o più caratteri arbitrari dal set di caratteri universale (UCS) [UCS]. Le sottostringhe di lunghezza zero non sono consentite.

La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

SubstringAssertion = [ initial ] any [ final ]

initial = substring
any = ASTERISK *(substring ASTERISK)
final = substring
ASTERISK = %x2A ; asterisco ("*")

substring = 1*substring-character
substring-character = %x00-29
/ (%x5C "2A") ; escape "*"
/ %x2B-5B
/ (%x5C "5C") ; escape "\"
/ %x5D-7F
/ UTFMB

Ogni <substring> di un valore Substring Assertion è codificata come una stringa UTF-8 [RFC3629], tranne per il fatto che i caratteri "" e "*", se appaiono in una sottostringa, sono preceduti da un carattere di escape "" seguito dal codice esadecimale a due cifre per il carattere.

La sintassi Substring Assertion viene utilizzata solo come sintassi di un valore di asserzione in una corrispondenza estensibile. Non viene utilizzata come sintassi di attributo o in un SubstringFilter [RFC4511].

La definizione LDAP per la sintassi Substring Assertion è:

( 1.3.6.1.4.1.1466.115.121.1.58 DESC 'Substring Assertion' )

Questa sintassi corrisponde al tipo ASN.1 SubstringAssertion da [X.520].

3.3.31. Numero di telefono​

Un valore della sintassi Telephone Number (Numero di telefono) è una stringa di caratteri stampabili conforme al formato concordato a livello internazionale per rappresentare i numeri di telefono internazionali [E.123].

La codifica specifica LDAP di un valore di questa sintassi è la stringa di caratteri non convertita, che è conforme alla regola <PrintableString> nella Sezione 3.2.

Esempio:

+1 512 315 0280
+1-512-315-0280
+61 3 9896 7830

La definizione LDAP per la sintassi Telephone Number è:

( 1.3.6.1.4.1.1466.115.121.1.50 DESC 'Telephone Number' )

La sintassi Telephone Number corrisponde al seguente tipo ASN.1 da [X.520]:

PrintableString (SIZE(1..ub-telephone-number))

Il valore di ub-telephone-number (un intero) è specifico dell'implementazione. Una definizione non normativa appare in [X.520].

3.3.32. Identificatore di terminale Teletex​

Un valore di questa sintassi specifica l'identificatore, e opzionalmente i parametri, per un terminale Teletex.

La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

teletex-id = ttx-term *(DOLLAR ttx-param)
ttx-term = PrintableString ; identificatore del terminale
ttx-param = ttx-key COLON ttx-value ; parametro
ttx-key = "graphic" / "control" / "misc" / "page" / "private"
ttx-value = *ttx-value-octet

ttx-value-octet = %x00-23
/ (%x5C "24") ; escape "$"
/ %x25-5B
/ (%x5C "5C") ; escape "\"
/ %x5D-FF

Le regole <PrintableString> e <COLON> sono definite nella Sezione 3.2. La regola <DOLLAR> è definita in [RFC4512].

La definizione LDAP per la sintassi Teletex Terminal Identifier è:

( 1.3.6.1.4.1.1466.115.121.1.51
DESC 'Teletex Terminal Identifier' )

Questa sintassi corrisponde al tipo ASN.1 TeletexTerminalIdentifier da [X.520].

3.3.33. Numero Telex​

Un valore della sintassi Telex Number (Numero Telex) specifica il numero telex, il codice paese e il codice di risposta di un terminale telex.

La codifica specifica LDAP di un valore di questa sintassi è definita dalla seguente ABNF:

telex-number  = actual-number DOLLAR country-code
DOLLAR answerback
actual-number = PrintableString
country-code = PrintableString
answerback = PrintableString

La regola <PrintableString> è definita nella Sezione 3.2. La regola <DOLLAR> è definita in [RFC4512].

La definizione LDAP per la sintassi Telex Number è:

( 1.3.6.1.4.1.1466.115.121.1.52 DESC 'Telex Number' )

Questa sintassi corrisponde al tipo ASN.1 TelexNumber da [X.520].

3.3.34. Ora UTC​

Un valore della sintassi UTC Time (Ora UTC) è una stringa di caratteri che rappresenta una data e un'ora con una precisione di un minuto o di un secondo. L'anno è dato con due cifre. La codifica specifica LDAP di un valore di questa sintassi segue il formato definito in [ASN.1] per il tipo UTCTime, ed è descritta dalla seguente ABNF:

UTCTime         = year month day hour minute [ second ]
[ u-time-zone ]
u-time-zone = %x5A ; "Z"
/ u-differential
u-differential = ( MINUS / PLUS ) hour minute

Le regole <year>, <month>, <day>, <hour>, <minute>, <second> e <MINUS> sono definite nella Sezione 3.3.13. La regola <PLUS> è definita in [RFC4512].

La suddetta ABNF consente stringhe di caratteri che non rappresentano date valide (nel calendario gregoriano) e/o orari validi. Tali stringhe di caratteri DOVREBBERO essere considerate non valide per questa sintassi.

Se viene utilizzata la forma "Z" di <u-time-zone>, allora il valore temporale rappresenta il tempo coordinato universale; in caso contrario, il valore rappresenta l'ora locale. In quest'ultimo caso, se viene fornito <u-differential>, allora il tempo coordinato universale può essere calcolato sottraendo il differenziale dall'ora locale. <u-time-zone> DOVREBBE essere presente nei valori temporali e la forma "Z" di <u-time-zone> DOVREBBE essere utilizzata preferibilmente a <u-differential>.

La definizione LDAP per la sintassi UTC Time è:

( 1.3.6.1.4.1.1466.115.121.1.53 DESC 'UTC Time' )

Nota: Questa sintassi è deprecata a favore della sintassi Generalized Time.

La sintassi UTC Time corrisponde al tipo ASN.1 UTCTime da [ASN.1].