VOTable is meant to serialize tabular documents in the context of Virtual Observatory applications. This schema corresponds to the VOTable document available from http://www.ivoa.net/Documents/latest/VOT.html Accept UCD1+ Accept also old UCD1 (but not / + %) including SIAP convention (with :) content-role was previsouly restricted as: ]]>; is now a token. Deprecated in Version 1.2 Deprecated in Version 1.1 Added in Version 1.2: INFO for diagnostics The 'encoding' attribute is added here to avoid problems of code generators which do not properly interpret the TR/TD structures. 'encoding' was chosen because it appears in appendix A.5 The ID attribute is added here to the TR tag to avoid problems of code generators which do not properly interpret the TR/TD structures Added in Version 1.2: INFO for diagnostics Added in Version 1.2: INFO for diagnostics in several places The data that is annotated resides in a VOTable elsewhere, indicated by a URL. The data that is annotated resides in a FITS file elsewhere, indicated by a URL. The data that is annotated is accessible through the TAP service indicated by a URL end point. This section will describe all global instances, that is, instances that are not created once per row of a table. It starts with a list of all the MODELs, then has all the GLOBAL instances. This section will describe all the instance, that is, instances created once per row of a table. The instances can have FIELDrefs describing how to fill individual primtive valuesthe templates from TABLEDATA values. For TAP_SCHEMA For FITS files or VOTable TABLEs without ID. Can be used by references as identifier for an object or template. Objects, i.e. ObjectType instances, can have a unique identifier which can be used in ORM-like references. Possible reference to a parent container of the object. May be given when the objects is not already contained in a colleciton on the parent object. Allows one to map OPTION values in VOTABLE to either EnumLiterals in data model (if TYPE identifies VO-DML/ Enumeration), or SKOSConcept in external SKOS vocabulary (if ROLE is a VO-DML/Attribute containing a skosconcept declaration). NB: IF the datatype of the ROLE is an Enumeration, and there is NO optionmapping it implies that the values ARE the enum literals, or the concepts. Allows one to map particular values defined in a VALUES/OPTION list to enumeration literals in the VO-DML model or to a concept in a SKOS vocabulary. The VOTable OPTION value that is being maped to enum literal or semantic concept. TBD anyURI as an identifier of concepts made sense for SKOS vocabularies. How about general semantic vocabularies? I.e. is it ok for the type be xs:string iso xs:anyURI? NB: ROLE has minOccurs=0 , at the moment only because VODMLObject::CONTAINER (a VODMLReferece) needs no role. ATTRIBUTE, COLLECTION and REFERENCE MUST have a ROLE. Hard to model in XML schema, could be done in Schematron. When used inside a "template" structured type, i.e. one defined inside a TABLE element, this allows one to indicate a FIELD representing the attribute. Simple, primitive value, possibly with extra attributes. Similar to PARAM, but restricted attribute set. SVALUE == structured value, instance of DataType A VODMLCollection represents collection of child objects in a VO-DML Composition relationship. The collection receives the VO-DML ref to the composition relation, the member objects inside the collection do *not* have a ROLE. An object in the collection. It type must conform to the declared type of the VO-DML Collection. I.e. it must be that exact type or a sub-type. Provides a reference to an ObjectType instance. Must allow that instance to be identified exactly. VArious different modes depending on how that instance is serialized. - If as a Standalone instance in same VOTable document, an IDREF can point to its ID (use IDREF). - If as a row in a TABLE a relational foreign key can be used (use ORMREFERENCE) - if a remote document contains the serialized instance, a URI must be used that MUST be able to identify that object inside its remote serialization (a REMOTEREFERENCE must be used). MUST identify an individual/standalone object defined in the same XML document. A reference to an object identified by that object's identifier. The referenced object must be stored in a TABLE and must have been annotated with an explicit identifier. Foreign key, identifying the referenced object. That object must be stored in a TABLE and must have been annotated with an identifier of the same shape as the FK. This element MAY be used to provide a IDREF to the (ID of the) VODMLObject template annotating the TABLE containing the referenced object. This type allows a generic identifier to be assigned to an object. The identifier consists of one or more IDFIELD-s. This way of identifying an object is equivalent to using one or more columns in a table as primary key. A field in an identifier. The identifier may contain 1 or more such fields. Their order is important, ORM references to the object must use the same order for their foreign key. The valid format of a reference to a VO-DML element. (Used to be 'UTYPE'). MUST have a prefix that elsewhere in the VOTable is defined to correspond to a VO-DML model defining the referenced element. See "mapping document", https://volute.g-vo.org/svn/trunk/projects/dm/vo-dml/doc/MappingDMtoVOTable-v1.0-201607xx.docx. Suffix, separated from the prefix by a ':', MUST correspond to the vodml-id of the referenced element in the VO-DML/XML representation of that model.