|Root of this site|
Sample Implementation of Nomencurator Data Model
An object-oriented diagram (left, compared to an entity relationship, right) showing an example implementation supporting the nomenclature data structure. Each round-cornered box indicates an object, a unit of data storage. The name and typical attributes of the object are shown in each box. Links between the objects are expressed by arrows between the boxes. The data-structure is publication oriented, so the objects can be grouped by publication base (shown as columns), which can be separated in time. An unique link between the name and the publication is the primary implementation issue and must provide an identification for a name based on a publication. Note that each Publication must possess one or more Appearance objects and each Appearance must possess one or more NameRecord objects. A column composed of these three objects corresponds to a publication which is the core unit in the structure. The structure does not have a centrally-controlled taxon concept, so links between names are based on publications. A publication often refers to previous publications and these references are captured by Annotations pointing from the later publications (right column) to the previous publications (left column). Since the annotation is publication specific, the Annotation object is linked to (or, owned by) the later Appearance object. The Annotation object has an attribute of link type: the richness of this link type is crucial to capturing the taxonomic relationships between the names. The Annotation is unidirectional: it never refers to future publications, but always refers from the publication giving the annotation to previous publications. Since this is inconvenient for navigation by name, the NRnode was created to facilitate finding publications which refer to a given publication, thus the network of the NRnodes provides the primary working domain for the navigator software. The NRnodes record the NameRecords referring and referred to by a given NameRecord , so are bi-directional. Notwithstanding its disadvantages in navigation, the unidirectional property of Annotations simplifies maintenance of the core data records because addition of new records does not modify the core data records and requires only modification of the pointer list in the NRnode objects, even if the new record proposes drastic change of taxa. Appearances, especially when abbreviated, are sometimes inconsistent or ambiguous which presents a serious problem to a publication-based database. Authors can be used to relax this constraint because the identification of authors can lend support to a link between publications that is inconclusively identified. Affiliations can also help identification of authors. These objects are intended to be used by navigator programs for arbitration.
|Top of this section|
Please send your feedback to: firstname.lastname@example.org