(Answer) (Category) OpenLDAP Faq-O-Matic : (Category) OpenLDAP Developer's FAQ : (Category) OpenLDAP OID Registry : (Category) .666 : (Category) .11 : (Answer) .11

Codice Fiscale

Italian "Codice Fiscale" syntax and related schema items


The "Codice Fiscale" syntax is derived from directoryString, restricted to values compliant with the document "Sistemi di codificazione dei soggetti da iscrivere all'anagrafe tributaria", DECRETO MINISTERIALE 23 dicembre 1976, GU 345 29-12-1976 - Suppl. Ordinario. The OID is

Values of this syntax can be of two types:

  • eleven digits followed by a control char (temporary codes and similar)
  • fifteen letters and digits followed by a control char
The regular case contains information taken from the surname, the name, the birthdate, the gender, the birthplace. In principle, the specification allows to generate the "Codice Fiscale" when that data is known. However, collisions are possible. Conflict resolution follows rules based on a first-in first-serve logic. As a consequence, only the values contained in the database of the "Ministero delle Finanze" are authoritative. Implementors are thus strongly discouraged from using the algorithm to generate values for the code.

Matching Rules

Values of the "Codice Fiscale" syntax can only contain decimal digits and uppercase alphabetic chars. As a consequence, the caseExactMatch matchingRule must be made compatible with the "Codice Fiscale" syntax.


This document defines the codiceFiscale attribute:
# attribute for "Codice Fiscale" of a person/company
attributeType (
        NAME 'codiceFiscale'
        DESC 'Codice Fiscale'
        EQUALITY caseExactMatch
        SINGLE-VALUE )


This document defines an abstract objectClass, codiceFiscaleBase, that allows the codiceFiscale attribute, and an auxiliary objectClass, codiceFiscaleObject, derived from codiceFiscaleBase:
# base objectClass
# derive from it custom objectClasses that need codiceFiscale
objectClass (
        NAME 'codiceFiscaleBase'
        DESC 'Codice Fiscale base object'
        SUP top
        MAY ( codiceFiscale ) )

# auxiliary objectClass
# use it to augment with codiceFiscale existing objects
objectClass (
        NAME 'codiceFiscaleObject'
        DESC 'Codice Fiscale auxiliary object'
        SUP codiceFiscaleBase )

Implementation Notes

This syntax is implemented in ITS#5787. A run-time loadable module that registers the syntax and makes caseExactMatch compatible with it is implemented in cf.c. The related schema items are defined in cf.schema.
[Append to This Answer]
Previous: (Answer) .10
This document is: http://www.openldap.org/faq/index.cgi?file=1471
[Search] [Appearance]
This is a Faq-O-Matic 2.721.test.
© Copyright 1998-2013, OpenLDAP Foundation, info@OpenLDAP.org