[Apologies for duplicate messages] Dear Colleagues, We have prepared a proposal to automatically clean-up references by name and other invalid references in RIPE Whois Database. The proposal aims at fixing objects like (as an hypothetical example): inetnum: 58.210.0.0 - 58.210.255.255 netname: EXAMPLE-OBJECT descr: Example inconsistent object country: EU admin-c: Engin Gunduz tech-c: Engin Gunduz status: ASSIGNED PA mnt-by: RIPE-NCC-NONE-MNT changed: engin@ripe.net 19940508 source: RIPE Note that in admin-c and tech-c attributes there are names, instead of NIC handles, which is currently regarded as a syntax error. Such objects were introduced into RIPE Whois Database when the syntax checks were not as strict as today. There are 2114 (out of approximately 2 million references) such invalid references as of December 2nd, 2002. The proposal will affect only the objects that have invalid references where a NIC handle should be used. Please see http://www.ripe.net/db/dbconstat/ for more information on Database Consistency and Statistics Project which deals with this and other types of inconsistencies in RIPE Database. Please find our proposal below. We would like to discuss the proposal until December 20th, 2002, at which date we will sum up the discussion, and perhaps begin to implement the resulting solution. Regards, Engin Gunduz RIPE NCC Database Group -------------- Proposed solution for cleaning up references by name and other invalid references in RIPE Whois Database Motivation: References by name and invalid references cause two main problems: 1. One reference by name in a single object locks all person and role objects with that name, that is, they cannot be deleted, because of referential integrity checks. 2. Having anything other than a NIC handle as a reference makes the implementation of whois database software considerably more complex, since the software needs to deal with these exceptions. This increases the coding time, maintenance time and testing time of the software. Classification of the inconsistencies we need to solve and proposed solutions: 1. Objects that refer to a person or role object by name. a. There is only one object with this name. Solution: Update the inconsistent object so that it will contain the NIC handle instead of the name. Add appropriate remarks and changed attributes to the object to explain the reason for update. b. There is no person or role object with this name: Solution: Create a person object with this name. Clearly mark this new object putting appropriate remarks attributes so that users will see it is actually a dummy object. Update the inconsistent object to refer to the NIC handle of this new person object. Add appropriate remarks and changed attributes to the object to explain the reason for update. c. There are multiple person and role objects with this name. Solution: Create a role object with this name. It will list all the other role and person objects with the same name in its admin-c and tech-c attributes. Update the inconsistent object to refer to the NIC handle of this new role object. Add appropriate remarks and changed attributes to the object to explain the reason for update. 2. Objects that refer to a non-existent NIC handle. Solution: Create a person object with that NIC handle. Clearly mark this new object so that users will see it is actually a dummy object. Name it "person: Place Holder Object". Note that there is no need to update the inconsistent object itself. 3. Objects that refer to a string which is neither a name, nor a NIC handle. For example, it might be a phone number in admin-c attribute, or it might be 'Gunduz', a string that can't be a NIC handle, as it's longer than 4 letters, nor can it be a name as it has only one word. Another example could be "Mr. Gunduz", which enters this category because "Mr" can't appear in a name of person/role object. Solution: Create a person object for each such reference. Name the object "person: Place Holder Object" and list the object that refers to it in its remarks attribute. Then update the inconsistent object to refer to the NIC handle of this new place holder person object. In each case an object is updated, send appropriate notifications (determined by "mnt-by" and "notify" attributes, as with all other updates). Please note that this proposal does not actually solve the problem of invalid contact information-- rather, it makes the data set more uniform, thus decreases the administration and development time of the whois database.