Cell

Definition of a cell.

Complex Type Information

Model

Attributes

QName Type Fixed Default Use Inheritable Annotation
name xs:string optional

Used By

Complex Type Level3Cell
Element Cells/cell

Source

<xs:complexType name="Cell">
  <xs:annotation>
    <xs:documentation>Definition of a cell.</xs:documentation>
  </xs:annotation>
  <xs:sequence>
    <xs:element name="status" type="meta:Status" minOccurs="0">
      <xs:annotation>
        <xs:documentation>Status of the cell model: stable, in progress, etc. Further test comments explaining the current status should be added.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:group ref="meta:metadata"/>
    <xs:group ref="meta:referencedata"/>
    <xs:element name="segments" minOccurs="1" maxOccurs="1">
      <xs:annotation>
        <xs:documentation>A segment defines the smallest unit within a possibly branching structure, such as a dendrite or axon. The first segment should represent the soma, if needed for downstream applications.</xs:documentation>
      </xs:annotation>
      <xs:complexType>
        <xs:sequence>
          <xs:group ref="meta:metadata"/>
          <xs:element name="segment" type="Segment" maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attribute name="name" type="xs:string" use="optional"/> -->
      </xs:complexType>
      <!-- This needs further testing!! -->
      <xs:unique name="uniqSegId">
        <xs:selector xpath=".//segment"/>
        <xs:field xpath="@id"/>
      </xs:unique>
      <xs:key name="keySegment">
        <xs:selector xpath=".//segment"/>
        <xs:field xpath="@id"/>
      </xs:key>
      <xs:keyref name="segmentParentRef" refer="keySegment">
        <xs:selector xpath=".//segment"/>
        <xs:field xpath="@parent"/>
      </xs:keyref>
    </xs:element>
    <xs:element name="cables" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The collection of cables. Each cable will be associated with a number of connected segments.</xs:documentation>
      </xs:annotation>
      <xs:complexType>
        <xs:sequence>
          <xs:group ref="meta:metadata"/>
          <xs:element name="cable" type="Cable" maxOccurs="unbounded"/>
          <xs:element name="cablegroup" type="CableGroup" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:complexType>
      <!-- This needs further testing!! -->
      <xs:unique name="keyCableGroup">
        <xs:selector xpath="./cablegroup"/>
        <xs:field xpath="@name"/>
      </xs:unique>
      <xs:unique name="keyCable">
        <xs:selector xpath="./cable"/>
        <xs:field xpath="@id"/>
      </xs:unique>
      <!--
                <xs:keyref name="cableParentRef" refer="keyCable">
                    <xs:selector xpath=".//cable"/>
                    <xs:field xpath="@parent"/>
                </xs:keyref>-->
    </xs:element>
    <xs:element name="cellBody" minOccurs="0">
      <xs:annotation>
        <xs:documentation>Used for anatomical representation of the soma. Use a Segment with equivalent properties to retain connectivity of branches to the soma for downstream applications (e.g. neuronal simulators).</xs:documentation>
      </xs:annotation>
      <xs:complexType>
        <xs:sequence>
          <xs:group ref="meta:metadata"/>
          <xs:choice>
            <xs:element name="polygon" type="meta:Polygon"/>
            <xs:element name="polyhedron" type="meta:Polyhedron"/>
            <xs:element name="sphere" type="meta:Sphere"/>
          </xs:choice>
        </xs:sequence>
      </xs:complexType>
    </xs:element>
    <xs:element name="spines" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The collection of spines.</xs:documentation>
      </xs:annotation>
      <xs:complexType>
        <xs:sequence>
          <xs:group ref="meta:metadata"/>
          <xs:element name="spine" type="Spine" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:complexType>
      <xs:keyref name="spineParentRef" refer="keySegment">
        <xs:selector xpath=".//spine"/>
        <xs:field xpath="@parent"/>
      </xs:keyref>
    </xs:element>
    <xs:element name="freePoints" type="FreePoints" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The collection of varicosities or synaptic connections.</xs:documentation>
      </xs:annotation>
    </xs:element>
  </xs:sequence>
  <xs:attribute name="name" type="xs:string" use="optional"/>
</xs:complexType>