Pierangelo Masarati wrote:
I've developed a module that implements support for the syntax of "codice fiscale", the personal identification code used by the Italian government to uniquely identify citizen.
Well, we currently get such a number in Germany too.
I think it might be of general use, although possibly limited to Italian users, so I'd like to give it a somewhat official and unbiased OID, rather than one under my arc or SysNet's. Would it qualify as general enough for OpenLDAP's OID arc, at least while experimental?
Well, when assigning OIDs there are two options:
1. the pragmatic approach: Use any OID arc you want since no-one ever cares. This seems to be the most common approach and works within a reasonable time-frame. Even OID arcs (enterprise IDs) looking very "official" seem to be assigned with this approach.
2. the "official" approach: Try to convince an official numbering authority to do the job. In your case that would the relevant Italian government agency or the central Italian bank. Be prepared for either being totally ignored or involved into really bizarre discussions. Also be prepared to wait at least two years for it. (Do you know the movie "Brazil"?)
I don't see why an OpenLDAP OID should look somewhat "more official" than any other OID arc. Just my two EUR cent. ;-)
I believe the need for a dedicated syntax (as opposed to IA5string, printableString or so) is that its definition, although flawed, needs to conform to quite a few restrictions, and a syntax that allows to detect trivial errors and single out impossible values would be definitely helpful.
Is there kind of a checksum digit?
An OID arc would be best, because the kit consists in:
- a syntax
- an equality matching rule (cfMatch)
- an attribute spec (cf)
- an auxiliary objectClass spec (cfObject)
Why do you need a matching rule? Is there a required normalization step like stripping white spaces before comparing it? (Frankly I'm not eager diving into the specification of this number though.) I could imagine a more general matching rule useful which strips spaces and then conducts numericStringMatch, caseIgnoreIA5Match etc.
Also I'd prefer a naming prefix slightly more verbose than 'cf' and reflecting the use for Italy. Maybe something like 'itcodefisc' or similar?
Ciao, Michael.