nexml schema 1.0 ~/nexml/xsd/trees/abstract.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 / trees / abstract
rss | digg reddit del.icio.us facebook | Thu May 22 17:10:52 2008 —

Description

This module defines abstract superclasses for tree components. Nexml defines trees as a sequence of nodes, zero or one root edge and a sequence of edges. There are different concrete instances of edges, namely those with lengths formatted as integers, and lengths formatted as floating point numbers.

In addition, there are different types of trees: those where nodes have an in-degree of 1 - true trees - and those with in-degree that can exceed 1 - networks.

Other views (open in new window):

Complex types

AbstractEdge [abstract]

Description

The AbstractEdge superclass is what concrete edges inherit from by restriction. It represents an edge element much like that of GraphML, i.e. an element that connects node elements.

Inheritance

AbstractEdge extends IDTagged. In turn, this type is inherited from by NetworkFloatEdge, NetworkIntEdge, TreeFloatEdge, TreeIntEdge,

Attributes
Name Type Usage
source xs:NCName required
target xs:NCName required
length xs:anySimpleType optional
Definition source
  <xs:complexType abstract="true" name="AbstractEdge">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:attribute name="source" type="xs:NCName" use="required"/>
        <xs:attribute name="target" type="xs:NCName" use="required"/>
        <xs:attribute name="length" type="xs:anySimpleType" use="optional"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractNetwork [abstract]

Description

The AbstractNetwork superclass is what a concrete network inherits from.

Inheritance

AbstractNetwork extends IDTagged. In turn, this type is inherited from by FloatNetwork, IntNetwork,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractNetwork">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="1" name="node" type="AbstractNode"/>
          <xs:element maxOccurs="unbounded" minOccurs="1" name="edge" type="AbstractEdge"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractNode [abstract]

Description

The AbstractNode superclass is what concrete nodes inherit from by restriction. It represents a node element much like that of GraphML, i.e. an element that is connected into a tree by edge elements.

Inheritance

AbstractNode extends OptionalTaxonLinked. In turn, this type is inherited from by NetworkNode, TreeNode,

Attributes
Name Type Usage
root xs:boolean optional
Definition source
  <xs:complexType abstract="true" name="AbstractNode">
    <xs:complexContent>
      <xs:extension base="OptionalTaxonLinked">
        <xs:attribute default="false" name="root" type="xs:boolean" use="optional"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractRootEdge [abstract]

Description

The AbstractRootEdge complex type is a superclass for the edge that leads into a root, i.e. an edge with only a target attribute, but no source attribute. This type of edge is used for coalescent trees, where the initial lineage has a certain length before things start splitting up.

Inheritance

AbstractRootEdge extends IDTagged. In turn, this type is inherited from by TreeFloatRootEdge, TreeIntRootEdge,

Attributes
Name Type Usage
target xs:NCName required
length xs:anySimpleType optional
Definition source
  <xs:complexType abstract="true" name="AbstractRootEdge">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:attribute name="target" type="xs:NCName" use="required"/>
        <xs:attribute name="length" type="xs:anySimpleType" use="optional"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractTree [abstract]

Description

The AbstractTree superclass is what a concrete tree inherits from.

Inheritance

AbstractTree extends IDTagged. In turn, this type is inherited from by FloatTree, IntTree,

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractTree">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:element maxOccurs="unbounded" minOccurs="1" name="node" type="AbstractNode"/>
          <xs:element maxOccurs="1" minOccurs="0" name="rootedge" type="AbstractRootEdge"/>
          <xs:element maxOccurs="unbounded" minOccurs="1" name="edge" type="AbstractEdge"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AbstractTrees [abstract]

Description

The AbstractTrees superclass is what concrete trees inherit from.

Inheritance

AbstractTrees extends IDTagged.

Substructures
Definition source
  <xs:complexType abstract="true" name="AbstractTrees">
    <xs:complexContent>
      <xs:extension base="IDTagged">
        <xs:sequence maxOccurs="1" minOccurs="1">
          <xs:choice maxOccurs="unbounded" minOccurs="0">
            <xs:element maxOccurs="unbounded" minOccurs="1" name="network" type="AbstractNetwork"/>
            <xs:element maxOccurs="unbounded" minOccurs="1" name="tree" type="AbstractTree"/>
          </xs:choice>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

See also

~/nexml/xsd/trees/abstract.xsd includes the following other files:

~/nexml/xsd/trees/abstract.xsd is included in:

This page summarizes the contents of schema file "~/nexml/xsd/trees/abstract.xsd" as of revision 548. 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 Thu May 22 17:10:52 2008.