This datatype represents an identifier for an object in the data model. It consists of 3 attributes that each are assumed to work in a particular context or representation of a data model instance. Identity The id attribute is assumed to represent an object in a database storing instances of the data model. Identity.id This attribute is used to support identifing of and referring to an object in an XML document using the ID/IDREF mechanism. Identity.xmlId The ivoId attribute is assumed to represent an object in a database following the design of the data model and accessible through a standardised registration and discovery protocols. It is assumed to be unique within the IVOA and its format follows (a generalisation of) the IVO Resource Identifier standard (see http://www.ivoa.net/Documents/REC/Identifiers/Identifiers-20070302.html). Since the ivoId is assumed to represent the resource as registered in a standard database for the data model, it is assumed to be allocated by such a database service. This is in contrast to the use of the IVO Identifier in resource registries, where the id is assumed to be allocated by the publisher. We have the publisherDID attribute for that purpose. Also in contrast to that usage is the fact that each object in the model is assigned this identifier, not only the root resources. We suggest as algorithm for assigning these ivoId to use as root the ivoId of the registered database service, and to append to this a # then the UTYPE of the element and finally its id attribute, separetd from the UTYPE by a forward slash. Identity.ivoId This attribute identifies an element in the context of the publisher. It is supposed to be unique in the IVO context and should likely be constrained to have the publisher's authority IVO id. This may need to be rediscussed when protocols for accessing a database built around a data model are to be designed. Identity.publisherDID A rational number from Q, represented by two integers, a numerator and a denominator. A native mapping to a serialisation context does in general not exists. rational The numerator of the quotient defining the rational. rational.numerator The denominator of the rational. Must be greater than 0. rational.denominator Represents a complex number, consisting of a real and imaginary component, both of which are reals. Note that in many contexts there is no native mapping for this type and it must be treated with a custom mapping. complex The real part of the complex number. complex.re The imaginary part of the complex number. complex.im Represents an interval of time from beginning to end. Is not equivalent to a simple real value indicating the number of seconds (for example). In general a custom mapping to a particular serialisation context must be provided. duration TODO : Missing description : please, update your UML model asap. duration._from TODO : Missing description : please, update your UML model asap. duration._to TODO : Missing description : please, update your UML model asap. quantity.AtomicValue This attribute should hold on to a valid UCD. For that purpose the attribute isa skosconcept, but a proper SKOS vocabulary for UCDs would be required to formalize this further. quantity.AtomicValue.ucd TODO : Missing description : please, update your UML model asap. quantity.BooleanValue TODO : Missing description : please, update your UML model asap. quantity.BooleanValue.value TODO : Missing description : please, update your UML model asap. quantity.IntegerQuantity TODO : Missing description : please, update your UML model asap. quantity.IntegerQuantity.value Meant to represent the value of a numerical physical quantity. May be integer, what units can apply there? quantity.Quantity TODO : Missing description : please, update your UML model asap. quantity.Quantity.unit TODO : Missing description : please, update your UML model asap. quantity.RealQuantity TODO : Missing description : please, update your UML model asap. quantity.RealQuantity.value TODO : Missing description : please, update your UML model asap. quantity.StringValue TODO : Missing description : please, update your UML model asap. quantity.StringValue.value Must conform to definition of unit in VOUnit spec. quantity.Unit