nexml schema 1.0 ~/nexml/xsd/characters/abstractcharacters.xsd

Skip to: Site menu | Main content

The 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.

Validate nexml data

Schema module documentation

~ / nexml / html / doc / schema-1 / characters / abstractcharacters
rss | digg reddit del.icio.us facebook | Wed Aug 20 22:40:14 2008 —

Description

This module defines the abstract superclasses for the components that go into character matrices. In nexml instance documents, the <characters> element structure forms the concrete instance of the complex types defined here. The concrete structure consists of zero or one <format> structures that define allowed states, their symbols and ambiguity mappings, and the matrix columns they apply to. This is then followed by a <matrix> element that contains rows that either consist of granular cells with individual states, or of compact sequences.

Other views (open in new window):

Complex types

AbstractBlock [abstract]

Description

The AbstractBlock is the superclass for blocks that contain an element structure of type AbstractFormat.

Inheritance

AbstractBlock extends TaxaLinked. In turn, this type is inherited from by AbstractCells, AbstractSeqs,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractBlock">
    <xs:complexContent>
      <xs:extension base="TaxaLinked">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="1" minOccurs="0" name="format" type="AbstractFormat"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractCells [abstract]

Description

The AbstractSeqBlock type is the superclass for character blocks that consist of granular character state observations.

Inheritance

AbstractCells extends AbstractBlock. In turn, this type is inherited from by ContinuousCells, DnaCells, ProteinCells, RestrictionCells, RnaCells, StandardCells,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractCells">
    <xs:complexContent>
      <xs:extension base="AbstractBlock">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="1" minOccurs="1" name="matrix" type="AbstractObsMatrix"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractChar [abstract]

Description

The AbstractChar type is the superclass for a column definition, which may have a "states" attribute that refers to an AbstractStates element, a codon attribute of type CodonPosition and an id attribute that may be an actual id (e.g. for categorical matrices where observations explicitly refer to a column definition) or an integer for sequence matrices.

Inheritance

AbstractChar extends IDTagged. In turn, this type is inherited from by AAChar, ContinuousChar, DNAChar, RNAChar, RestrictionChar, StandardChar,

Attributes
Name Type Usage
tokens MSTokenLength optional
states xs:NCName optional
codon CodonPosition optional
Definition source
  <xs:complexType abstract="true" name="AbstractChar">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1"/>
        <xs:attribute name="tokens" type="MSTokenLength" use="optional"/>
        <xs:attribute name="states" type="xs:NCName" use="optional"/>
        <xs:attribute name="codon" type="CodonPosition" use="optional"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractFormat [abstract]

Description

The AbstractFormat type is the superclass for the element that defines the allowed characters and states in a matrix, and their ambiguity mapping. It may enclose AbstractStates elements that define states and their mappings, and AbstractChar elements that specify which AbstractStates apply to which matrix columns.

Inheritance

AbstractFormat extends Annotated. In turn, this type is inherited from by AAFormat, ContinuousFormat, DNAFormat, RNAFormat, RestrictionFormat, StandardFormat,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractFormat">
    <xs:complexContent>
      <xs:extension base="Annotated">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="0" name="states" type="AbstractStates"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="char" type="AbstractChar"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractMapping [abstract]

Description

The AbstractMapping type is the superclass for an ambiguity mapping. In an instance document, a subclass of this type will look like , i.e. an element called "member" with an attribute called "state" whose value is an id reference that refers to an element that subclasses AbstractState. The purpose of AbstractMapping is to specify which other states may be implied, e.g. a nucleotide symbol "N" would have mappings to "A", "C", "G" and "T".

Inheritance

AbstractMapping extends Base. In turn, this type is inherited from by DNAMapping, StandardMapping,

Attributes
Name Type Usage
state xs:NCName required
Definition source
  <xs:complexType abstract="true" name="AbstractMapping">
    <xs:complexContent>
      <xs:extension base="Base">
        <xs:attribute name="state" type="xs:NCName" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractObs [abstract]

Description

The AbstractObs type is the superclass for single observations, i.e. cells in a matrix. A concrete instance of AbstractObs has a "char" attribute that either refers to an explicitly defined character (e.g. in categorical matrices) or to a column number, and a "state" attribute that either holds a reference to an explicitly defined state, or a raw state value (e.g. a nucleotide, a continuous value).

Inheritance

AbstractObs extends Labelled. In turn, this type is inherited from by AAObs, ContinuousObs, DNAObs, RNAObs, RestrictionObs, StandardObs,

Attributes
Name Type Usage
char xs:anySimpleType required
state xs:anySimpleType required
Definition source
  <xs:complexType abstract="true" name="AbstractObs">
    <xs:complexContent>
      <xs:extension base="Labelled">
        <xs:attribute name="char" type="xs:anySimpleType" use="required"/>
        <xs:attribute name="state" type="xs:anySimpleType" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractObsMatrix [abstract]

Description

The AbstractObsMatrix super class is the abstract type for a element that contains rows which hold granular state observations.

Inheritance

AbstractObsMatrix extends Annotated. In turn, this type is inherited from by AAObsMatrix, ContinuousObsMatrix, DNAObsMatrix, RNAObsMatrix, RestrictionObsMatrix, StandardObsMatrix,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractObsMatrix">
    <xs:complexContent>
      <xs:extension base="Annotated">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="1" name="row" type="AbstractObsRow"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractObsRow [abstract]

Description

The AbstractObsRow represents a single row in a matrix. The row must refer to a previously declared taxon element by its id attribute (and must have an id itself, may have a label, and may have dictionary attachments). The row contains multiple obs elements.

Inheritance

AbstractObsRow extends TaxonLinked. In turn, this type is inherited from by AAMatrixObsRow, ContinuousMatrixObsRow, DNAMatrixObsRow, RNAMatrixObsRow, RestrictionMatrixObsRow, StandardMatrixObsRow,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractObsRow">
    <xs:complexContent>
      <xs:extension base="TaxonLinked">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="1" name="cell" type="AbstractObs"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractPolymorphicStateSet [abstract]

Description

The AbstractState type is the superclass for a state definition. The element encloses a required AbstractSymbol element that in restricted concrete subclasses must be of a sensible type such as a single IUPAC character. It may enclose zero or more AbstractMapping elements to resolve ambiguities.

Inheritance

AbstractPolymorphicStateSet extends AbstractUncertainStateSet. In turn, this type is inherited from by StandardPolymorphicStateSet,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractPolymorphicStateSet">
    <xs:complexContent>
      <xs:extension base="AbstractUncertainStateSet">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="0" name="uncertain_state_set" type="AbstractUncertainStateSet"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractSeqMatrix [abstract]

Description

The AbstractSeqMatrix super class is the abstract type for a element that contains rows which hold raw character sequences.

Inheritance

AbstractSeqMatrix extends Annotated. In turn, this type is inherited from by AASeqMatrix, ContinuousSeqMatrix, DNASeqMatrix, RNASeqMatrix, RestrictionSeqMatrix, StandardSeqMatrix,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractSeqMatrix">
    <xs:complexContent>
      <xs:extension base="Annotated">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="1" name="row" type="AbstractSeqRow"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractSeqRow [abstract]

Description

The AbstractSeqRow represents a single row in a matrix. The row must refer to a previously declared taxon element by its id attribute (and must have an id itself, may have a label, and may have dictionary attachments). The row contains a single seq element with raw character data.

Inheritance

AbstractSeqRow extends TaxonLinked. In turn, this type is inherited from by AAMatrixSeqRow, ContinuousMatrixSeqRow, DNAMatrixSeqRow, RNAMatrixSeqRow, RestrictionMatrixSeqRow, StandardMatrixSeqRow,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractSeqRow">
    <xs:complexContent>
      <xs:extension base="TaxonLinked">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="1" minOccurs="1" name="seq" type="xs:anySimpleType"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractSeqs [abstract]

Description

The AbstractSeqBlock type is the superclass for character blocks that consist of raw character sequences.

Inheritance

AbstractSeqs extends AbstractBlock. In turn, this type is inherited from by ContinuousSeqs, DnaSeqs, ProteinSeqs, RestrictionSeqs, RnaSeqs, StandardSeqs,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractSeqs">
    <xs:complexContent>
      <xs:extension base="AbstractBlock">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="1" minOccurs="1" name="matrix" type="AbstractSeqMatrix"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractState [abstract]

Description

The AbstractState type is the superclass for a state definition. The element encloses a required AbstractSymbol element that in restricted concrete subclasses must be of a sensible type such as a single IUPAC character. It may enclose zero or more AbstractMapping elements to resolve ambiguities.

Inheritance

AbstractState extends IDTagged. In turn, this type is inherited from by AbstractUncertainStateSet, DNAState, StandardState,

Attributes
Name Type Usage
symbol xs:anySimpleType required
Definition source
  <xs:complexType abstract="true" name="AbstractState">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1"></xs:sequence>
        <xs:attribute name="symbol" type="xs:anySimpleType" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractStates [abstract]

Description

A container for a set of AbstractState elements.

Inheritance

AbstractStates extends IDTagged. In turn, this type is inherited from by DNAStates, StandardStates,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractStates">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="0" name="state" type="AbstractState"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="polymorphic_state_set" type="AbstractPolymorphicStateSet"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="uncertain_state_set" type="AbstractUncertainStateSet"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractUncertainStateSet [abstract]

Description

The AbstractState type is the superclass for a state definition. The element encloses a required AbstractSymbol element that in restricted concrete subclasses must be of a sensible type such as a single IUPAC character. It may enclose zero or more AbstractMapping elements to resolve ambiguities.

Inheritance

AbstractUncertainStateSet extends AbstractState. In turn, this type is inherited from by AbstractPolymorphicStateSet, StandardUncertainStateSet,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractUncertainStateSet">
    <xs:complexContent>
      <xs:extension base="AbstractState">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="0" name="member" type="AbstractMapping"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

Simple types

AbstractSeq

Description

AbstractSeq is a simple type based on xs:string. Concrete subclasses must restrict this type to something more sensible, such as a regular expression for IUPAC single character symbols, or whitespace separated integers.

Inheritance

AbstractSeq restricts xs:string. In turn, this type is inherited from by AASeq, DNASeq, RNASeq,

Definition source
  <xs:simpleType name="AbstractSeq">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>

AbstractSymbol

Description

AbstractSymbol is a simple type, i.e. a string token. Concrete subclasses of character blocks will restrict AbstractSymbol to something sensible such as a regular expression of IUPAC symbols, a range of integer values, and so on.

Inheritance

AbstractSymbol restricts xs:string. In turn, this type is inherited from by AAToken, DNAToken, RNAToken,

Facets
Type Value
whiteSpace preserve
Definition source
  <xs:simpleType name="AbstractSymbol">
    <xs:restriction base="xs:string">
      <xs:whiteSpace value="preserve"/>
    </xs:restriction>
  </xs:simpleType>

AbstractTokenList

Description

AbstractTokenList is a simple type superclass for a compact character data representations that consist of space-separated lists of tokens. Examples of this are continuous character data (where the compact representation is a list of space-separated floating point numbers) and standard categorical data (which is represented as integers, which can be > 9, and hence need to be space-separated).

Inheritance

AbstractTokenList defines a new type by making a list of xs:double type items.

In turn, this type is inherited from by ContinuousSeq, StandardSeq,

Definition source
  <xs:simpleType name="AbstractTokenList">
    <xs:list itemType="xs:double"/>
  </xs:simpleType>

CodonPosition

Description

The CodonPosition type is an integer with value 1, 2 or 3, used in DNA and RNA.

Inheritance

CodonPosition restricts xs:nonNegativeInteger.

Facets
Type Value
minInclusive 1
maxInclusive 3
Definition source
  <xs:simpleType name="CodonPosition">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:minInclusive value="1"/>
      <xs:maxInclusive value="3"/>
    </xs:restriction>
  </xs:simpleType>

MSTokenLength

Description

The MSTokenLength simple type is used to specify, per column, how many tokens may occur in a multistate single observation matrix. For example, in a matrix where every cell holds a vector of two continuous values (say, mean and standard deviation of a measurement), the column definition provides a hint to this effect, by setting the attribute tokens="2"

Inheritance

MSTokenLength restricts xs:positiveInteger.

Definition source
  <xs:simpleType name="MSTokenLength">
    <xs:restriction base="xs:positiveInteger"/>
  </xs:simpleType>

See also

~/nexml/xsd/characters/abstractcharacters.xsd includes the following other files:

~/nexml/xsd/characters/abstractcharacters.xsd is included in:

This page summarizes the contents of schema file "~/nexml/xsd/characters/abstractcharacters.xsd" as of revision 596. That schema file was last modified by rvos on 2008-05-20 14:48:49 -0400 (Tue, 20 May 2008), and this HTML summary page was generated on Wed Aug 20 22:40:14 2008.