wiki-archive/twiki/data/SDD/Primer/SddCharacters.txt

245 lines
11 KiB
Plaintext
Raw Permalink Blame History

%META:TOPICINFO{author="DonovanSharp" date="1157613649" format="1.1" reprev="1.17" version="1.17"}%
%META:TOPICPARENT{name="SddContents"}%
---++SDD Part 0: Introduction and Primer to the SDD Standard
---+++3.6 Characters
Characters and their states are fundamental elements used in SDD to describe a taxon, specimen or other entity. Characters and states (and their arrangement into a hierarchy) provide the ontology for the SDD document. Sdd employs a single flat character list containing states. The order of characters in SDD is not informative and is instead defined exclusively in the [[CharacterHierarchies][<CharacterHierarchies>]] element. This enables different character sequences for different reporting purposes and splitting characters into multiple files or reusing characters from different terminologies.
SDD States may be defined either locally within a character or enabled by reference to <noautolink>ConceptStates</noautolink>.
SDD supports four character types, dealt with individually below.
%ATTACHURL%/characters.gif
---+++3.6.1 Categorical characters
Categorical characters express either naturally discontinuous states or categories defining parts of a continuous range. Examples include presence (present/absent), colour (red/blue) and shape (round/ovate).
A simple SDD code instance representing a categorical character definition has the basic structure shown below, Example 3.6.1.1 shows two categorical characters as traditionally expressed; Example 3.6.1.2 shows the same characters and states represented in SDD.
%ATTACHURL%/categoricalcharacter.gif
---+++++Example 3.6.1.1 - Traditional representation of categorical characters.
<table bgcolor="#ddddff" border="0" width="100%" cellpadding="5" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td>
<verbatim>
Wing Number
four
two
none (wings absent)
Wing Shape
broad
narrow
</verbatim>
</td>
</tr>
</table>
---+++++Example 3.6.1.2 - SDD representation of the categorical characters in 3.6.1.1.
<table bgcolor="#ddddff" border="0" width="100%" cellpadding="5" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td>
<verbatim>
<Characters>
<CategoricalCharacter id="c1">
<Representation>
<Label>Wing Number</Label>
</Representation>
<States>
<StateDefinition id="s1">
<Representation>
<Label>four</Label>
</Representation>
</StateDefinition>
<StateDefinition id="s2">
<Representation>
<Label>two</Label>
</Representation>
</StateDefinition>
<StateDefinition id="s3">
<Representation>
<Label>Absent</Label>
</Representation>
</StateDefinition>
</States>
</CategoricalCharacter>
<CategoricalCharacter id="c2">
<Representation>
<Label>Wing Shape</Label>
</Representation>
<States>
<StateDefinition id="s4">
<Representation>
<Label>broad</Label>
</Representation>
</StateDefinition>
<StateDefinition id="s5">
<Representation>
<Label>narrow</Label>
</Representation>
</StateDefinition>
</States>
</CategoricalCharacter>
</Characters>
</verbatim>
</td>
</tr>
</table>
Characters and their states are represented using a label, perhaps in a [[SddLanguage][defined language]] and for a [[SddAudiences][defined audience]]. States for a categorical character are listed under their appropriate character. Elsewhere in SDD documents, characters and states are referred to by their id values rather than by their labels.
Note that characters and states defined in the &lt;Characters&gt; element form a flat list. The [[CharacterHierarchies][&lt;CharacterHierarchies&gt;]] element is used to arrange characters defined here into a hierarchy.
Note that a &lt;CategoricalCharacter&gt; element must have one or more state elements
&lt;Assumptions&gt; allows properties of the character (such as whether the states are ordered or unordered and whether the states are naturally discrete) to be set
[[SddMapping][&lt;Mapping&gt;]] allows characters and states to be mapped to each other (e.g. the states narrowly ovate and broadly ovate may be mapped as substates of the state ovate)
---+++3.6.2 Quantitative characters
Quantitative states record an actual measurement (e.g. number of legs = 8; leaf length = 6.8 cm), range of measurements (e.g. leaf length=4.5-10.6), or statistical parameter for a set of measurements (e.g.). Extended ranges (e.g. wing length= (5-)10-40(-50) mm, interpreted as wings usually between 10 and 40mm but occasionally down to 5mm or up to 50mm) are supported.
A simple SDD code instance representing a quantitative character definition has the basic structure shown below and in Example 3.6.2.1.
%ATTACHURL%/quantitativecharacter.gif
---++++Example 3.6.2.1 - SDD definition of a simple quantitative character &#8220;Leaf length&#8221;.
<table bgcolor="#ddddff" border="0" width="100%" cellpadding="5" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td>
<verbatim>
<Characters>
<QuantitativeCharacter id="c4">
<Representation>
<Label>leaf length</Label>
</Representation>
</QuantitativeCharacter>
</Characters>
</verbatim>
</td>
</tr>
</table>
&lt;Assumptions&gt; allows properties of the character to be set. Properties include whether the values are expected to be integers, discrete or continuous etc, and whether there is an expected plausible range). Any measure used in a description constitutes valid information. However, a list of recommended measures for sets of characters may be defined in concept nodes.
[[SddMapping][&lt;Mapping&gt;]] allows numeric states to be mapped to categorical character states (e.g. the range 0-10 may be mapped to small, and the range 10-20 to medium).
&lt;MeasurementUnit&gt; defines a measurement unit (mm, inch, kg, <20>C, m/s, etc.) or dimensionless scaling factor (such as '%') applying to all values of this character. If a Default <noautolink>MeasurementUnitPrefix</noautolink> is defined (see below), this must be entered without a prefix (e. g., 'm' instead of 'mm').
(Measurement units apply only to values plus those statistical measures not marked as <noautolink>IsDimensionless</noautolink>='true'.).
&lt;Default&gt; provides a default value to be used for the character if no value is specifically recorded in a description.
---+++3.6.3 Text characters
Text characters record information not easily ascribed to a measurement or atomised into characters and states. Examples include place of publication (e.g. &#8220;Smith 1998. Flora of Erehwon, Z-Publ.&#8221;), derivations (e.g. &#8220;acuta- from the Latin acuo (sharpen), alluding to the sharply pointed glumes (Aristida acuta)&#8221;) or general notes (e.g. &#8220;One record for tropical Queensland but mainly recorded from subtropical coastal Queensland to northern New South Wales. Eucalyptus woodlands and forests on poor soil&#8221;).
The content of quantitative characters simply exists as plain text within a &lt;Representation&gt; element as in Example 3.6.2.1 below.
---+++++3.6.3.1 Sdd representation of text characters
<table bgcolor="#ddddff" border="0" width="100%" cellpadding="5" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td>
<verbatim>
<Characters>
<TextCharacter id="text1">
<Representation>
<Label>Original publication</Label>
</Representation>
</TextCharacter>
</Characters>
<CodedDescriptions>
<CodedDescription id="cd1">
<Representation>
<Label>Perotis</Label>
</Representation>
<Scope>
<TaxonName ref="t1"/>
</Scope>
<SummaryData>
<TextChar ref="text1">
<Content>Hort. Kew. 1: 85 (1789)</Content>
</TextChar>
</SummaryData>
</CodedDescription>
</CodedDescriptions>
</verbatim>
</td>
</tr>
</table>
---+++3.6.4 Sequence characters
Sequence characters record the coding of genes or proteins for use in molecular analysis. The basic structure od SDD code for sequence characters has the basic structure shown below and in example 3.6.4.1.
%ATTACHURL%/sequencecharacter.gif
---+++++3.6.3.1 Sdd representation of sequence characters
<table bgcolor="#ddddff" border="0" width="100%" cellpadding="5" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td>
<verbatim>
<SequenceCharacter id="seq1">
<Representation>
<Label>test DNA sequence</Label>
</Representation>
<SequenceType> Nucleotide</SequenceType>
<GapSymbol>-</GapSymbol>
<SymbolLength>1</SymbolLength>
<EnableAmbiguitySymbols>true</EnableAmbiguitySymbols>
</SequenceCharacter>
</verbatim>
</td>
</tr>
</table>
&lt;SequenceType&gt; is currently limited to 'Nucleotide' and 'Protein', but future SDD versions may expand this after appropriate discussion. The special nucleotide type RNA/DNA are currently not considered necessary. The symbols U (RNA) and T (DNA) should be considered equal for the purpose of analysis.
&lt;SymbolLength&gt; refers to the number of letters in each symbol. Nucleotides are always codes with 1-letter symbols, but proteins may use 1 or 3-letter codes (A or Ala for alanine). In NEXUS <noautolink>SymbolLength</noautolink> is implicit in the Token command.
&lt;GapSymbol&gt; is a string identifying the 'gap' symbol used in aligned sequences. The gap symbol must always be <noautolink>SymbolLength</noautolink> long. A gap is a place where no data exist, but where a position must be filled because it is assumed that sequence symbols were inserted or deleted during evolution.
&lt;EnableAmbiguitySymbols&gt; provides support for ambiguity symbols such as R, Y, S, W for nucleotides, or B,Z for proteins in the sequence string.
-- Main.DonovanSharp - 01 Jun 2006
%META:FILEATTACHMENT{name="sequencecharacter.gif" attr="" autoattached="1" comment="" date="1152767210" path="sequencecharacter.gif" size="12659" user="Main.DonovanSharp" version="2"}%
%META:FILEATTACHMENT{name="characters.gif" attr="" autoattached="1" comment="" date="1152755064" path="characters.gif" size="17468" user="Main.DonovanSharp" version="1"}%
%META:FILEATTACHMENT{name="quantitativecharacter.gif" attr="" autoattached="1" comment="" date="1152755957" path="quantitativecharacter.gif" size="11455" user="Main.DonovanSharp" version="1"}%
%META:FILEATTACHMENT{name="categoricalcharacter.gif" attr="" autoattached="1" comment="" date="1152755383" path="categoricalcharacter.gif" size="8735" user="Main.DonovanSharp" version="1"}%