[nexml]
phylogenetic data in xmlThe future data exchange standard is here!
nexml is an exchange standard for representing phylogenetic data — inspired by the commonly used NEXUS format, but more robust and easier to process.
Schema module documentation
Description
This module defines abstract superclasses. In xml schema, inheritance of complex types
is either through extension or through restriction. Extensions in this context means that
the child class can have more types of elements appended to the end of its children, and/or
more attributes. Restriction means that the child class is more limited than the base class,
in that it might have fewer child elements, fewer attributes, or more restricted child
element types.
The nexml schema uses inheritance such that abstract superclasses - i.e. those defined in
this module - extend each other to form a useful tree of superclasses, from which child
classes then derive by restriction. This is done so that for any type there is always an
exhaustive abstract superclass, to which parsers should be adapted, so that derived
instances won't have surprising substructures.
Other views (open in new window):
Complex types
Annotated [abstract]
Description
The Annotated complexType is a super class for objects that optionally have metadata annotations of type Meta.
Inheritance
Annotated extends Base. In turn, this type is inherited from by AbstractFormat, AbstractObsMatrix, AbstractSeqMatrix, Labelled, Nexml,
Attributes
| Name | Type | Usage |
| about | xhtml:URIorSafeCURIE | optional |
Substructures
- an element called "meta", instance of Meta (0..unbounded).
Definition source
<xs:complexType abstract="true" name="Annotated"> <xs:complexContent mixed="true"> <xs:extension base="Base"> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="meta" type="Meta"/> </xs:sequence> <xs:attribute name="about" type="xhtml:URIorSafeCURIE" use="optional"/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
Class
Description
Elements of the Class complexType are elements with an ID to which other elements refer using the "class" attribute. The purpose of this to allow creation of sets, but rather than having a set specify its members (such as character sets in nexus), in nexml the members specify which class(es) they belong to. This is more idiomatic for xml, consider for example the "class" attribute in (X)HTML which works the same way, and is used for example for cascading style sheets.
Inheritance
Class extends IDTagged.
Definition source
<xs:complexType abstract="false" name="Class"> <xs:complexContent> <xs:extension base="IDTagged"/> </xs:complexContent> </xs:complexType>
[ Back to top ]
IDTagged [abstract]
Description
The IDTagged complexType is a super class for objects that require unique id attributes of type xs:ID. The id must be unique within the XML document.
Inheritance
IDTagged extends Labelled. In turn, this type is inherited from by AbstractChar, AbstractEdge, AbstractNetwork, AbstractRootEdge, AbstractState, AbstractStates, AbstractTree, AbstractTrees, Class, OptionalTaxonLinked, Segmented, Taxa, TaxaLinked, Taxon, TaxonLinked,
Definition source
<xs:complexType abstract="true" name="IDTagged"> <xs:complexContent mixed="true"> <xs:extension base="Labelled"> <xs:sequence/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
Labelled [abstract]
Description
The Labelled complexType is a super class for objects that optionally have label attributes to use as a (non-unique) name of type xs:string.
Inheritance
Labelled extends Annotated. In turn, this type is inherited from by AbstractObs, IDTagged,
Attributes
| Name | Type | Usage |
| label | xs:string | optional |
Definition source
<xs:complexType abstract="true" name="Labelled"> <xs:complexContent mixed="true"> <xs:extension base="Annotated"> <xs:attribute name="label" type="xs:string" use="optional"/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
OptionalTaxonLinked [abstract]
Description
The OptionalOTULinked complexType is a super class for objects that that optionally have an otu id reference.
Inheritance
OptionalTaxonLinked extends IDTagged. In turn, this type is inherited from by AbstractNode,
Attributes
| Name | Type | Usage |
| otu | xs:IDREF | optional |
Definition source
<xs:complexType abstract="true" name="OptionalTaxonLinked"> <xs:complexContent> <xs:extension base="IDTagged"> <xs:attribute name="otu" type="xs:IDREF" use="optional"/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
Segmented [abstract]
Description
The Segmented complexType is for elements that contain multiple child elements of the same type, e.g. multiple cells in a row, multiple nodes in a tree, etc. Segmented elements can hold one or more elements of type Class, such that the segments can refer to the ID of the class they belong to.
Inheritance
Segmented extends IDTagged.
Substructures
- an element called "class", instance of Class (0..unbounded).
Definition source
<xs:complexType abstract="true" mixed="true" name="Segmented"> <xs:complexContent mixed="true"> <xs:extension base="IDTagged"> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="class" type="Class"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
TaxaLinked [abstract]
Description
The TaxaLinked complexType is a super class for objects that that require an otus id reference.
Inheritance
TaxaLinked extends IDTagged. In turn, this type is inherited from by AbstractBlock, Trees,
Attributes
| Name | Type | Usage |
| otus | xs:IDREF | required |
Definition source
<xs:complexType abstract="true" name="TaxaLinked"> <xs:complexContent> <xs:extension base="IDTagged"> <xs:attribute name="otus" type="xs:IDREF" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
TaxonLinked [abstract]
Description
The TaxonLinked complexType is a super class for objects that require a taxon id reference.
Inheritance
TaxonLinked extends IDTagged. In turn, this type is inherited from by AbstractObsRow, AbstractSeqRow,
Attributes
| Name | Type | Usage |
| otu | xs:IDREF | required |
Definition source
<xs:complexType abstract="true" name="TaxonLinked"> <xs:complexContent mixed="true"> <xs:extension base="IDTagged"> <xs:attribute name="otu" type="xs:IDREF" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType>
[ Back to top ]
See also
~/nexml/xsd/abstract.xsd includes the following other files:
~/nexml/xsd/abstract.xsd is included in:
This page summarizes the contents of schema file "~/nexml/xsd/abstract.xsd" as of revision 1303. That schema file was last modified by rvos on 2010-06-11 09:27:40 -0400 (Fri, 11 Jun 2010), and this HTML summary page was generated on Tue Jun 15 08:18:00 2010.
inheritance tree
inclusions tree
schema source