(Documentation of the SDD schema version 0.9, released 1. Dec. 2003. This is a secondary version of the schema documentation, preferred to explore the type hierarchy and view the direct links to annotation sources. See the "Overview of available documentation" for further information.
Table of Contents
Target Namespace
http://www.tdwg.org/2003/SDD_09
Version
SDD 0.9.030
Element and Attribute Namespaces
Global element and attribute declarations belong to this schema's target namespace.
By default, local element declarations belong to this schema's target namespace.
By default, local attribute declarations have no namespace.
Documentation
XML schema to encode descriptive data in biology and other subjects. The primary goal of the design is to increase the knowledge and availability of knowledge about the diversity of life on earth. However, it may be used in many other areas (including medicine, pathology, archeology, anthropology) wherever objects or classes of objects are described for later reidentification.
The schema was designed by the Structure of Descriptive Data (SDD, http://160.45.63.11/Projects/TDWG-SDD/index.html) group. SDD was established 1999 as a subgroup of the Taxonomic Databases Working Group (TDWG, www. tdwg.org) of the International Union of Biological Sciences (IUBS). The author of the current schema version and of all annotations is G. Hagedorn, Berlin. The requirements for an SDD schema where elaborated in 6 major meetings of the SDD group and in discussions over the SDD email list. Over 60 people contributed to these discussions. However, the help, criticism and energy of Bob Morris, Kevin Thiele, Bryan Heidorn, Guillaume Rousse, Steve Shattuck and Nicolas Bailly is specially acknowledged!
Copyright © TDWG, 1. December 2003. This is a preliminary version (0.9!) for testing purposes. Permission to use this schema is granted to all scientific or commercial projects for a testing period of up to 3 years. After this time computer programs using this schema must either be discontinued or converted to the final version of this schema.
Conventions:
Element or attribute names starting with underscores (__) may be present in the schema for discussion purposes and should not be used. Annotations containing @ indicate unfinished points of discussion.
Note: blockDefault="#all" in xs:schema prevents that in instance documents derived types can be used in elements typed to the base type (which otherwise is possible using xsi:type=""). - finalDefault is not set, further type derivation is currently not considered problematic. Please contact me if you believe otherwise. Note that according to the w3c discussion forum, the developers of xml Schema consider to drop the final attribute in the upcoming Schema version 1.1. - Nillable: xsi:null is not supported in SDD documents (schema declaration nillable="false" is default, not explicitly stated).
Declared Namespaces
Prefix
Namespace
Default namespace
http://www.tdwg.org/2003/SDD_09
xml
http://www.w3.org/XML/1998/namespace
xs
http://www.w3.org/2001/XMLSchema
Schema Component Representation
<
xs:schema targetNamespace ="
http://www.tdwg.org/2003/SDD_09 "
elementFormDefault ="
qualified "
attributeFormDefault ="
unqualified "
blockDefault ="
#all "
version ="
SDD 0.9.030 ">
...
</
xs:schema >
Name
Document
Type
Locally-defined complex type
Nillable
no
Abstract
no
Documentation
Provides root element. Note that the version of the SDD standard used is defined in the namespace declaration and needs no separate data element.
Note: until xInclude is sufficiently widespread implemented to combine data from different documents, terminology, descriptions, and resources must be in the same document!
XML Instance Representation
<Document>
<!--
Key Constraint -
GlossaryEntryKey Selector -
Terminology/Glossary/GlossaryEntry Field(s) -
@key -->
<!--
Key Constraint -
CodingStatusKey Selector -
Terminology/CodingStatusValues/CodingStatus Field(s) -
@key -->
<!--
Key Constraint -
StatisticalMeasureKey Selector -
Terminology/StatisticalMeasures/StatisticalMeasure Field(s) -
@key -->
<!--
Key Constraint -
ProbModifierKey Selector -
Terminology/Modifiers/Probability/Modifier Field(s) -
@key -->
<!--
Key Constraint -
FrequModifierKey Selector -
Terminology/Modifiers/Frequency/Modifier Field(s) -
@key -->
<!--
Key Constraint -
GeneralModifierKey Selector -
Terminology/Modifiers/General/Modifier Field(s) -
@key -->
<!--
Key Constraint -
ModifierSetKey Selector -
Terminology/Modifiers/Sets/Set Field(s) -
@key -->
<!--
Key Constraint -
CharacterStateKey Selector -
Terminology/Characters/Character/Categorical/States/StateDefinition | Terminology/Characters/Character/Categorical/States/StateReference Field(s) -
@key -->
<!--
Key Constraint -
CharacterStatMeasureKey Selector -
Terminology/Characters/Character/Numerical/StatisticalMeasures/StatisticalMeasure Field(s) -
@key -->
<!--
Key Constraint -
CombinedCharStateOrMeasureKey Selector -
Terminology/Characters/Character/Categorical/States/StateDefinition | Terminology/Characters/Character/Categorical/States/StateReference | Terminology/Characters/Character/Numerical/StatisticalMeasures/StatisticalMeasure Field(s) -
@key -->
<!--
Key Constraint -
ConceptTreeKey Selector -
Terminology/ConceptTrees/ConceptTree Field(s) -
@key -->
<!--
Key Constraint -
GenericStateKey Selector -
.//Concept/GenericStates/StateDefinition Field(s) -
@key -->
<!--
Key Constraint -
ClassHierarchyKey Selector -
Entities/ClassHierarchies/ClassHierarchy Field(s) -
@key -->
<!--
Key Constraint -
MediaResourceKey Selector -
Resources/MediaResources/MediaResource Field(s) -
@key -->
<!--
Key Constraint -
DescriptionKey Selector -
Descriptions/CodedDescription | Descriptions/NaturalLanguageDescription Field(s) -
@key -->
</Document>
Schema Component Representation
<
xs:element name ="
Document ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
<
xs:key name ="
AudienceDefinitionKey ">
<xs:selector xpath ="ProjectDefinition/Audiences/Audience "/>
<xs:field xpath ="@audiencekey "/>
</
xs:key >
<
xs:key name ="
GlossaryEntryKey ">
<xs:selector xpath ="Terminology/Glossary/GlossaryEntry "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
GlossaryEntry_UniqueTerm ">
<xs:selector xpath ="Terminology/Glossary/GlossaryEntry/Representation "/>
<xs:field xpath ="Term "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
CodingStatusKey ">
<xs:selector xpath ="Terminology/CodingStatusValues/CodingStatus "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
CodingStatus_UniqueLabelText ">
<xs:selector xpath ="Terminology/CodingStatusValues/CodingStatus/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
StatisticalMeasureKey ">
<xs:selector xpath ="Terminology/StatisticalMeasures/StatisticalMeasure "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
StatisticalMeasure_UniqueLabelText ">
<xs:selector xpath ="Terminology/StatisticalMeasures/StatisticalMeasure/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:unique name ="
StatisticalMeasure_UniqueMethodAndValue ">
<xs:selector xpath ="Terminology/StatisticalMeasures/StatisticalMeasure/Generalization "/>
<xs:field xpath ="Method "/>
<xs:field xpath ="MethodValue "/>
</
xs:unique >
<
xs:key name ="
ProbModifierKey ">
<xs:selector xpath ="Terminology/Modifiers/Probability/Modifier "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
Probability_UniqueLabelText ">
<xs:selector xpath ="Terminology/Modifiers/Probability/Modifier/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
FrequModifierKey ">
<xs:selector xpath ="Terminology/Modifiers/Frequency/Modifier "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
Frequency_UniqueLabelText ">
<xs:selector xpath ="Terminology/Modifiers/Frequency/Modifier/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
GeneralModifierKey ">
<xs:selector xpath ="Terminology/Modifiers/General/Modifier "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
GeneralModifier_UniqueLabelText ">
<xs:selector xpath ="Terminology/Modifiers/General/Modifier/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:unique name ="
CombinedModifierKey ">
<xs:selector xpath ="Terminology/Modifiers/*/Modifier "/>
<xs:field xpath ="@key "/>
</
xs:unique >
<
xs:key name ="
ModifierSetKey ">
<xs:selector xpath ="Terminology/Modifiers/Sets/Set "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
ModifierSet_UniqueLabelText ">
<xs:selector xpath ="Terminology/Modifiers/Sets/Set/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
CharacterDefinitionKey ">
<xs:selector xpath ="Terminology/Characters/Character "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
Character_UniqueLabelText ">
<xs:selector xpath ="Terminology/Characters/Character/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
CharacterStateKey ">
<xs:selector xpath ="Terminology/Characters/Character/Categorical/States/StateDefinition | Terminology/Characters/Character/Categorical/States/StateReference "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
CharacterStatMeasureKey ">
<xs:selector xpath ="Terminology/Characters/Character/Numerical/StatisticalMeasures/StatisticalMeasure "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
CombinedCharStateOrMeasureKey ">
<xs:selector xpath ="Terminology/Characters/Character/Categorical/States/StateDefinition | Terminology/Characters/Character/Categorical/States/StateReference | Terminology/Characters/Character/Numerical/StatisticalMeasures/StatisticalMeasure "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
ConceptTreeKey ">
<xs:selector xpath ="Terminology/ConceptTrees/ConceptTree "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
ConceptTree_UniqueLabelText ">
<xs:selector xpath ="Terminology/ConceptTrees/ConceptTree/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
ConceptTreeNodeKey ">
<xs:selector xpath =".//Concept "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
GenericStateKey ">
<xs:selector xpath =".//Concept/GenericStates/StateDefinition "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
ClassResourceKey ">
<xs:selector xpath ="Entities/Classes/Class "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
ClassHierarchyKey ">
<xs:selector xpath ="Entities/ClassHierarchies/ClassHierarchy "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
ObjectResourceKey ">
<xs:selector xpath ="Entities/Objects/Object "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
AgentResourceKey ">
<xs:selector xpath ="Resources/Agents/Agent "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
PublicationResourceKey ">
<xs:selector xpath ="Resources/Publications/Publication "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
LocalityResourceKey ">
<xs:selector xpath ="Resources/Geography/Locality "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
MediaResourceKey ">
<xs:selector xpath ="Resources/MediaResources/MediaResource "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
DescriptionKey ">
<xs:selector xpath ="Descriptions/CodedDescription | Descriptions/NaturalLanguageDescription "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:key name ="
DesignedKeyDefKey ">
<xs:selector xpath ="Keys/Key "/>
<xs:field xpath ="@key "/>
</
xs:key >
<
xs:unique name ="
DesignedKey_UniqueLabelText ">
<xs:selector xpath ="Keys/Key/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
<
xs:key name ="
DesignedKeyNodeKey ">
<xs:selector xpath =".//Lead "/>
<xs:field xpath ="@key "/>
</
xs:key >
</
xs:element >
Name
KeyAttrGroup
Documentation
Contains a key and a generic debugkey attribute.
Schema Component Representation
<
xs:attributeGroup name ="
KeyAttrGroup ">
<
xs:attribute name ="
key "
type ="
KeyValue "
use ="
required "/>
<
xs:attribute name ="
debugkey "
type ="
xs :string"
use ="
optional "/>
</
xs:attributeGroup >
Name
KeyrefAttrGroup
Documentation
Currently contains only the generic debugref attribute. The ref attribute could be defined here as well, but this would prevent adding annotations to clarify which key a ref is pointing to!
Schema Component Representation
<
xs:attributeGroup name ="
KeyrefAttrGroup ">
<
xs:attribute name ="
debugref "
type ="
xs :string"
use ="
optional "/>
</
xs:attributeGroup >
Name
__FormattedBlockTextType
Documentation
[Unused!]
Extends the FormattedInlineTextType and allows the following block level elements as well: p, ol, ul, li, h1-h6.
This should be defined through reference to a full xhtml fragment definition, but it must be without html/header/body elements!
XML Instance Representation
<...>
<!-- Mixed content --> Start Choice [0..*] ? <ins
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] </ins>
<del
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] ? </del>
<citationauthor>
StringN </citationauthor>
[1] ? <taxonauthor>
StringN </taxonauthor>
[1] ? End Choice Start Choice [1] End Choice </...>
Schema Component Representation
<
xs:complexType name ="
__FormattedBlockTextType "
mixed ="
true ">
<
xs:complexContent mixed ="
true ">
</
xs:complexContent >
</
xs:complexType >
Name
__FormattedInlineTextType
Documentation
[Unused!]
Extends the FormattedSimpleTextType and allows in addition to basic character formatting also the use of <img> and <a> elements.
This should probably be implemented through references to types from the real a xhtml schema, if it is possible to refer to an appropriate subset.
XML Instance Representation
<...>
<!-- Mixed content --> Start Choice [0..*] ? <ins
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] </ins>
<del
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] ? </del>
<citationauthor>
StringN </citationauthor>
[1] ? <taxonauthor>
StringN </taxonauthor>
[1] ? End Choice Start Choice [1..*] ? <a
name="xs :NMTOKEN [0..1] " href="xs :anyURI [0..1] " hreflang="xs :language [0..1] " >
[1] ? Start Choice [0..*] ? <ins
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] </ins>
<del
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] ? </del>
<citationauthor>
StringN </citationauthor>
[1] ? <taxonauthor>
StringN </taxonauthor>
[1] ? End Choice </a>
<img
src="xs :anyURI [1] " alt="xs :string [1] " longdesc="xs :anyURI [0..1] " height="xs :positiveInteger [0..1] " width="xs :positiveInteger [0..1] " />
[1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
__FormattedInlineTextType "
mixed ="
true ">
<
xs:complexContent mixed ="
true ">
<
xs:extension base ="
FormattedSimpleTextType ">
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
a ">
<
xs:complexType >
<
xs:complexContent >
<
xs:extension base ="
FormattedSimpleTextType ">
<
xs:attribute name ="
name "
type ="
xs :NMTOKEN"/>
<
xs:attribute name ="
href "
type ="
xs :anyURI"/>
<
xs:attribute name ="
hreflang "
type ="
xs :language"/>
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
img ">
<
xs:complexType >
<
xs:attribute name ="
src "
type ="
xs :anyURI"
use ="
required "/>
<
xs:attribute name ="
alt "
type ="
xs :string"
use ="
required "/>
<
xs:attribute name ="
longdesc "
type ="
xs :anyURI"/>
<
xs:attribute name ="
height "
type ="
xs :positiveInteger"/>
<
xs:attribute name ="
width "
type ="
xs :positiveInteger"/>
</
xs:complexType >
</
xs:element >
</
xs:choice >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
__OptionalCreatorsType
Documentation
[Unused!] Creators = authors, editors or contributors. It is generally desirable that at least on author/editor is named. In the case of legacy data, this may, however, not be feasible.
Currently we are attempting to require the presence of at least one creator. If this should not be possible, we may have to go back to this type!
Schema Component Representation
<
xs:complexType name ="
__OptionalCreatorsType ">
<
xs:sequence >
<
xs:element name ="
Authors "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Authors_UniqueAgent2 ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Editors "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Editors_UniqueAgent2 ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Contributors "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Contributors_UniqueAgent2 ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Translators "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Translators_UniqueAgent2 ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Name
AgentConnectorType
Documentation
Used for Agent documentation (an Agent is a person, project, organisation, or software agent). Currently used for authors, editors, contributors, and translators. Ideally it connects to an outside definition or documentation of the Agent.
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<ServiceProvider>
String255 </ServiceProvider>
[0..1] ? <FreeFormDescription>
String255 </FreeFormDescription>
[1] ? <Annotation>
StringN </Annotation>
[0..1] ? <Homepage>
xs :anyURI </Homepage>
[0..1] ? <__OtherElements_ToBeDefined> ... </__OtherElements_ToBeDefined> [0..1]
</...>
Schema Component Representation
<
xs:complexType name ="
AgentConnectorType ">
<
xs:complexContent >
<
xs:extension base ="
ResourceConnectorBaseType ">
<
xs:sequence >
<
xs:element name ="
LastName "
type ="
String255 "/>
<
xs:element name ="
FirstNames "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
Homepage "
type ="
xs :anyURI"
minOccurs ="
0 "/>
<xs:element name ="__OtherElements_ToBeDefined " minOccurs ="0 "/>
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
AgentRefsType
Documentation
A collection of AgentRefType elements, i. e. Agents forming a team like an author team.
Schema Component Representation
<
xs:complexType name ="
AgentRefsType ">
<
xs:sequence >
<
xs:element name ="
Agent "
type ="
AgentRefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
AgentResourceKeyref "
refer ="
AgentResourceKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
AgentRefType
Documentation
Defines an element with a ref attribute pointing to an Agent (Resources/Agents/Agent)
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " FirstContributionDate="xs :dateTime [0..1] ? " LastContributionDate="xs :dateTime [0..1] " />
Schema Component Representation
<
xs:complexType name ="
AgentRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
<
xs:attribute name ="
FirstContributionDate "
type ="
xs :dateTime"
use ="
optional "/>
<
xs:attribute name ="
LastContributionDate "
type ="
xs :dateTime"
use ="
optional "/>
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ApplicationDataType
Documentation
Application specific data, providing an extension mechanism to the SDD model.
SDD conforming editing applications are expected to preserve the information of other applications when importing and later exporting data to support lossless round tripping.
Recommendation: Each application may read out its own information. Any other target information present should be preserved and output when a new document is generated. This is designed to support item potent round tripping data between two applications. This implies that no dependency between the settings and the descriptions and the terminology setting should be relied upon.
XML Instance Representation
<...>
<Application
name="String255 [1] ? " version="String255 [0..1] ? " >
[1..*] ? Allow any elements from any namespace (lax validation). [1..*]
</Application>
</...>
Schema Component Representation
<
xs:complexType name ="
ApplicationDataType ">
<
xs:sequence >
<
xs:element name ="
Application "
maxOccurs ="
unbounded ">
<
xs:complexType mixed ="
false ">
<
xs:sequence >
<xs:any namespace ="##any " processContents ="lax " maxOccurs ="unbounded "/>
</
xs:sequence >
<
xs:attribute name ="
name "
type ="
String255 "
use ="
required "/>
<
xs:attribute name ="
version "
type ="
String255 "
use ="
optional "/>
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
AudienceRefType
Documentation
Base type; defines an element with a ref attribute pointing to Audience definitions (different data type from generic ref!)
XML Instance Representation
<...
audience="xs :Name [1] " />
Schema Component Representation
<
xs:complexType name ="
AudienceRefType ">
<
xs:attribute name ="
audience "
type ="
xs :Name"
use ="
required "/>
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
AudiencesType
Documentation
An Audience is a combination of language (including dialect) and expertise (pupil, beginner, expert). Multiple audiences can be defined for the same language and expertise, distinguished only by their label.
[ATTR: defaultaudience]
XML Instance Representation
<...
defaultaudience="xs :Name [1] ? " >
<Audience
audiencekey="xs :Name [1] ? " lang="xs :language [1] " ExpertiseLevel="ExpertiseLevelEnum [1] ? " >
[1..*] ? <Description>
StringN </Description>
[0..1] ? </Audience>
</...>
Schema Component Representation
<
xs:complexType name ="
AudiencesType ">
<
xs:sequence >
<
xs:element name ="
Audience "
maxOccurs ="
unbounded ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
LabelText "
type ="
String255 "/>
<
xs:element name ="
Description "
type ="
StringN "
minOccurs ="
0 "/>
</
xs:sequence >
<
xs:attribute name ="
audiencekey "
type ="
xs :Name"
use ="
required "/>
<
xs:attribute name ="
lang "
type ="
xs :language"
use ="
required "/>
</
xs:complexType >
</
xs:element >
</
xs:sequence >
<
xs:attribute name ="
defaultaudience "
type ="
xs :Name"
use ="
required "/>
</
xs:complexType >
Name
CharacterCodingStatusDataType
Documentation
Similar to CharacterStateDataType, this one is intended for CodingStatus references.
The ref attribute points to the key of Terminology/CodingStatusValues/CodingStatus
@@Is it ok to inherit the ref attribute from the state base type, even though it points elsewhere?
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<IsTemplateForChildDescription>
xs :boolean </IsTemplateForChildDescription>
[0..1] ? <__Origin> ... </__Origin>
[0..1] ? <Annotation>
StringN </Annotation>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CharacterCodingStatusDataType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterCodingStatusNLDType
Documentation
Variant to be used inside the NaturalLanguageDescription markup container.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
Start Choice [1] <Annotation>
StringN </Annotation>
[0..1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterCodingStatusNLDType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
CharacterRefType
< CharacterData_BaseType (by extension)
Sub-types:
Name
CharacterData_BaseType
Abstract
yes
Documentation
Abstract base type for character
data in coded descriptions. It
primarily contains a reference
to a Character definition key, plus
a set of references to character
state definition keys.
@@This base type may be redundant. Is Sequence really relevant both in coded synthetical data as well as in raw data?@@
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<Sequence>
xs :Name (value comes from list: {'description'|'terminology'}) </Sequence>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CharacterData_BaseType "
abstract ="
true ">
<
xs:complexContent >
<
xs:extension base ="
CharacterRefType ">
<
xs:sequence >
<
xs:element name ="
Sequence "
default ="
terminology "
minOccurs ="
0 ">
<
xs:simpleType >
<
xs:restriction base ="
xs :Name">
<xs:enumeration value ="description "/>
<xs:enumeration value ="terminology "/>
</
xs:restriction >
</
xs:simpleType >
</
xs:element >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterDataType
Documentation
Used in coded descriptions to make statements covering a single
character of a class or object.
The type provides a ref to the definition of a character (it is derived from CharacterRefType)
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<Sequence>
xs :Name (value comes from list: {'description'|'terminology'}) </Sequence>
[0..1] ? Start Choice [1..*] End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterDataType ">
<
xs:complexContent >
<
xs:extension base ="
CharacterData_BaseType ">
<
xs:sequence >
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
State "
type ="
CharacterStateDataType ">
<
xs:keyref name ="
CharacterStateKeyref_Coded "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
CharacterDefType
Documentation
Defines a character in the terminology
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<Annotation>
StringN </Annotation>
[0..1] ? <Numerical>
[0..1] ? <StatisticalMeasures>
[1] ? </StatisticalMeasures>
<Mappings>
[0..1] ? <Mapping>
[1..*] ? </Mapping>
</Mappings>
<MeasurementUnit
Postfix="xs :boolean [0..1] " >
[0..1] ? Start Choice [0..*] ? <ins
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] </ins>
<del
cite="xs :anyURI [0..1] " datetime="xs :dateTime [0..1] " >
[1] ? </del>
<citationauthor>
StringN </citationauthor>
[1] ? <taxonauthor>
StringN </taxonauthor>
[1] ? End Choice </MeasurementUnit>
<__MeasurementAccuracy>
String255 </__MeasurementAccuracy>
[0..1] ? </Numerical>
<Categorical>
[0..1] ? <States>
[1] ? Start Choice [1..*] ? <StateReference
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
[1] ? </StateReference>
End Choice </States>
<AutoAddStates>
[0..1] ? </AutoAddStates>
<Mappings>
[0..1] ? <Mapping>
[1..*] ? </Mapping>
</Mappings>
</Categorical>
<ModifierSets>
[0..1] ? </ModifierSets>
</...>
Schema Component Representation
<
xs:complexType name ="
CharacterDefType ">
<
xs:sequence >
<
xs:element name ="
Label "
type ="
LabelPlusAbbreviationType ">
<
xs:unique name ="
Char_UniqueLabelRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Numerical "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
StatisticalMeasures ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
StatisticalMeasure "
type ="
CharacterStatMeasureDefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
StatisticalMeasureKeyref "
refer ="
StatisticalMeasureKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
Char_UniqueStatMeasureRefs ">
<xs:selector xpath ="StatisticalMeasure "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Mappings "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Mapping "
maxOccurs ="
unbounded ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
From ">
<
xs:complexType >
<
xs:attribute name ="
LowerValue "
type ="
xs :double"
use ="
required "/>
<
xs:attribute name ="
UpperValue "
type ="
xs :double"
use ="
required "/>
</
xs:complexType >
</
xs:element >
<
xs:element name ="
To "
type ="
CharacterStateRefType ">
<
xs:keyref name ="
CharacterStateKeyref_NumMapping "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
<
xs:keyref name ="
CharacterStateKeyref_NumMapping2 "
refer ="
WithinCharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
MeasurementUnit "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:complexContent >
<
xs:extension base ="
FormattedSimpleTextType ">
<
xs:attribute name ="
Postfix "
type ="
xs :boolean"
use ="
optional "
default ="
true "/>
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
__MeasurementAccuracy "
type ="
String255 "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Categorical "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
States ">
<
xs:complexType >
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
StateReference ">
<
xs:complexType >
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
<
xs:keyref name ="
GenericStateKeyref "
refer ="
GenericStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:complexType >
<
xs:unique name ="
Char_UniqueGenericStateRefs ">
<xs:selector xpath ="StateReference "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
<
xs:unique name ="
CharState_UniqueLabelText ">
<xs:selector xpath ="StateDefinition/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
AutoAddStates "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
GenericStateSet "
type ="
CharacterNodeRefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
GenericStateKeyref_AutoAdd "
refer ="
ConceptTreeNodeKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
Char_UniqueAutoAddRefs ">
<xs:selector xpath ="StateSet "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Mappings "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Mapping "
maxOccurs ="
unbounded ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
From "
type ="
CharacterStateRefType ">
<
xs:keyref name ="
CharacterStateKeyref_CatMapping1 "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
<
xs:keyref name ="
CharacterStateKeyref_CatMapping2 "
refer ="
WithinCharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
<
xs:element name ="
To "
type ="
CharacterStateRefType ">
<
xs:keyref name ="
CharacterStateKeyref_CatMapping3 "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
<
xs:keyref name ="
CharacterStateKeyref_CatMapping4 "
refer ="
WithinCharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
Char_UniqueCategoricalMapping ">
<xs:selector xpath ="Mapping "/>
<xs:field xpath ="From/@ref "/>
<xs:field xpath ="To/@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
ModifierSets "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
ModifierSet "
type ="
ModifierSetRefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
ModifierSetKeyref "
refer ="
ModifierSetKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
Char_UniqueModifierSetRefs ">
<xs:selector xpath ="ModifierSet "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Name
CharacterMeasureDataType
Documentation
Similar to CharacterStateDataType, this one is intended for statistical measures. The ref attribute points to a statistical measure definition inside a character definition.
@@Note: the necessity of Note inside statistical measures needs to be discussed. On measures like min, max, mean this will be difficult to support during natural language reporting! However, on measures like sample size they may be valuable.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " Value="xs :double [1] " >
<IsTemplateForChildDescription>
xs :boolean </IsTemplateForChildDescription>
[0..1] ? <__Origin> ... </__Origin>
[0..1] ? <Annotation>
StringN </Annotation>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CharacterMeasureDataType ">
<
xs:complexContent >
<
xs:extension base ="
CharacterStateData_BaseType ">
<
xs:sequence >
<
xs:element name ="
Probability "
type ="
ProbabilityModifierRefType "
minOccurs ="
0 ">
<
xs:keyref name ="
ProbModifierKeyref_StatMeasure "
refer ="
ProbModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
<
xs:attribute name ="
Value "
type ="
xs :double"
use ="
required "/>
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterMeasureNLDType
Documentation
Variant to be used inside the NaturalLanguageDescription markup container.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " Value="xs :double [1] " >
Start Choice [1..*] <Annotation>
StringN </Annotation>
[0..1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterMeasureNLDType ">
<
xs:complexContent >
<
xs:restriction base ="
CharacterMeasureDataType ">
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
Note "
type ="
ReportedNoteType ">
<
xs:unique name ="
NLDMeasure_UniqueNoteRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Probability "
type ="
ProbabilityModifierNLDType ">
<
xs:keyref name ="
ProbModifierKeyref_StatMeasureNLD "
refer ="
ProbModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:restriction >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterNLDType
Documentation
For NaturalLanguageDescriptions.
The sequence and cardinality
of elements is undefined and
Text elements may be freely interspersed.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
Start Choice [1..*] End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterNLDType ">
<
xs:complexContent >
<
xs:restriction base ="
CharacterDataType ">
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
State "
type ="
CharacterStateNLDType ">
<
xs:keyref name ="
CharacterStateKeyref_NLD "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:restriction >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
CharacterNodeRefType
Documentation
Refers to a node in a concept tree (e. g. to refer to a generic state set defined at this node)
Schema Component Representation
<
xs:complexType name ="
CharacterNodeRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Name
CharacterNumericValueNLDType
Documentation
Variant to be used inside the NaturalLanguageDescription markup container.
XML Instance Representation
<...
Value="xs :double [1] " >
</...>
Schema Component Representation
<
xs:complexType name ="
CharacterNumericValueNLDType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
CharacterNumericValueType
Documentation
(single Value attribute of type xs: double in an otherwise empty element)
This type is used coded descriptions and as base type for natural language descriptions. To hide the English- formatted value from natural language descriptions using other numeric formats, the value must be stored in an attribute of type double rather than as element content!
XML Instance Representation
<...
Value="xs :double [1] " />
Schema Component Representation
<
xs:complexType name ="
CharacterNumericValueType ">
<
xs:attribute name ="
Value "
type ="
xs :double"
use ="
required "/>
</
xs:complexType >
Name
CharacterRawDataType
Documentation
Used in coded descriptions to make statements covering a single character inside the repeated Observation container.
The type provides a ref to the definition of a character (it is derived from CharacterRefType) plus references to states and a single real numeric value.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<Sequence>
xs :Name (value comes from list: {'description'|'terminology'}) </Sequence>
[0..1] ? Start Choice [1] End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterRawDataType ">
<
xs:complexContent >
<
xs:extension base ="
CharacterData_BaseType ">
<
xs:choice >
<
xs:element name ="
State "
type ="
CharacterStateDataType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
CharacterStateKeyref_CodedObservation "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
CharacterRefType
Documentation
Refers to a character (e. g. from within concept trees or from Descriptions). It consists only of a reference to a Character definition key.
Schema Component Representation
<
xs:complexType name ="
CharacterRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Name
CharacterStateData_BaseType
Abstract
yes
Documentation
The abstract base type defines the common attributes that are used in both coding status (not modifiable) and normal categorical state (modifiable) references.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<IsTemplateForChildDescription>
xs :boolean </IsTemplateForChildDescription>
[0..1] ? <__Origin> ... </__Origin>
[0..1] ? <Annotation>
StringN </Annotation>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CharacterStateData_BaseType "
abstract ="
true ">
<
xs:complexContent >
<
xs:extension base ="
CharacterStateRefType ">
<
xs:sequence >
<
xs:element name ="
Note "
type ="
ReportedNoteType "
minOccurs ="
0 ">
<
xs:unique name ="
CodedDescription_UniqueNoteRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
IsTemplateForChildDescription "
type ="
xs :boolean"
default ="
false "
minOccurs ="
0 "/>
<xs:element name ="__Origin " minOccurs ="0 "/>
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterStateDataType
Documentation
Like CharacterStateData_BaseType,
but allows expression of state
probability, frequency,
and general modifiers.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
<IsTemplateForChildDescription>
xs :boolean </IsTemplateForChildDescription>
[0..1] ? <__Origin> ... </__Origin>
[0..1] ? <Annotation>
StringN </Annotation>
[0..1] ? Start Choice [0..1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterStateDataType ">
<
xs:complexContent >
<
xs:extension base ="
CharacterStateData_BaseType ">
<
xs:sequence >
<
xs:element name ="
Probability "
type ="
ProbabilityModifierRefType "
minOccurs ="
0 ">
<
xs:keyref name ="
ProbModifierKeyref_Coded "
refer ="
ProbModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
<
xs:choice minOccurs ="
0 ">
<
xs:element name ="
FrequencyValue ">
<
xs:complexType >
<
xs:attribute name ="
Value "
type ="
Probability "
use ="
required "/>
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Frequency "
type ="
FrequencyModifierRefType ">
<
xs:keyref name ="
FrequModifierKeyref_Coded "
refer ="
FrequModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
<
xs:element name ="
Modifier "
type ="
GeneralModifierRefType "
minOccurs ="
0 "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
ModifierKeyref_Coded "
refer ="
GeneralModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
StateDefBaseType
< CharacterStateDefType (by extension)
Sub-types:
None
Name
CharacterStateDefType
Documentation
Based on StateDefBaseType,
for categorical states.
Used in generic
(= 'project-wide')
and local character
state definitions.
Any use of a character state in
descriptions is a reference to an
object of this type or one of its derivations.
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<Annotation>
StringN </Annotation>
[0..1] ? <UnconstrainedText>
xs :boolean </UnconstrainedText>
[0..1] ? <__Type>
xs :Name (value comes from list: {'Local'|'Generic'|'CodingStatus'|'Computed'}) </__Type>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CharacterStateDefType ">
<
xs:complexContent >
<
xs:extension base ="
StateDefBaseType ">
<
xs:sequence >
<
xs:element name ="
UnconstrainedText "
type ="
xs :boolean"
default ="
false "
minOccurs ="
0 "/>
<
xs:element name ="
__Type "
minOccurs ="
0 ">
<
xs:simpleType >
<
xs:restriction base ="
xs :Name">
<xs:enumeration value ="Local "/>
<xs:enumeration value ="Generic "/>
<xs:enumeration value ="CodingStatus "/>
<xs:enumeration value ="Computed "/>
</
xs:restriction >
</
xs:simpleType >
</
xs:element >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Name
CharacterStateNLDType
Documentation
Like CharacterStateDataType, but for use in the NaturalLanguageDescription markup container. The sequence and cardinality of elements is unconstrained and Text elements are provided between all elements.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " >
Start Choice [1..*] <Annotation>
StringN </Annotation>
[0..1] ? Start Choice [1] ? <FrequencyValue
Value="Probability [1] " >
[1] ? </FrequencyValue>
<FrequencyRange
LowerEstimate="Probability [1] " UpperEstimate="Probability [1] " __IsEstimate="xs :boolean [0..1] ? " >
[1] ? </FrequencyRange>
End Choice End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CharacterStateNLDType ">
<
xs:complexContent >
<
xs:restriction base ="
CharacterStateDataType ">
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
Note "
type ="
ReportedNoteType ">
<
xs:unique name ="
NLDState_UniqueNoteRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:choice >
<
xs:element name ="
FrequencyValue ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
<
xs:attribute name ="
Value "
type ="
Probability "
use ="
required "/>
</
xs:complexType >
</
xs:element >
<
xs:element name ="
FrequencyRange ">
<
xs:complexType >
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Frequency "
type ="
FrequencyModifierNLDType ">
<
xs:keyref name ="
FrequModifierKeyref_NLD "
refer ="
FrequModifierKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:choice >
</
xs:restriction >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
CharacterStateRefsType
Documentation
A collection of state references (CharacterStateRefType)
Schema Component Representation
<
xs:complexType name ="
CharacterStateRefsType ">
<
xs:sequence >
<
xs:element name ="
State "
type ="
CharacterStateRefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
CharacterStateKeyref "
refer ="
CharacterStateKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
CharacterStateRefType
Documentation
Refers to a character state (e. g. from Descriptions). It consists only of a reference to a Character state definition key.
Schema Component Representation
<
xs:complexType name ="
CharacterStateRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
CharacterStatMeasureDefType
Documentation
Used inside the character definition, it refers to a generic statistical measure in Terminology/StatisticalMeasures.
In addition to the ref it defines a new key and formatting information.
XML Instance Representation
<...
ref="KeyValue [1] ? " debugref="xs :string [0..1] ? " key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<__OrThisInstead>
[0..1] <__LeadingZero>
xs :boolean </__LeadingZero>
[0..1] ? <__DecimalSeparator>
String255 </__DecimalSeparator>
[0..1] ? <__DecimalPlaces>
xs :byte </__DecimalPlaces>
[0..1] ? </__OrThisInstead>
</...>
Schema Component Representation
<
xs:complexType name ="
CharacterStatMeasureDefType ">
<
xs:sequence >
<
xs:element name ="
__OrThisInstead "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
__LeadingZero "
type ="
xs :boolean"
minOccurs ="
0 "/>
<
xs:element name ="
__DecimalSeparator "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
__DecimalPlaces "
type ="
xs :byte"
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
CitationType
Documentation
Combines a publication resource reference with a detail location within that reference (esp. page number)
XML Instance Representation
<...>
<__TaxonNameInSource>
String255 </__TaxonNameInSource>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
CitationType ">
<
xs:sequence >
<
xs:element name ="
Publication "
type ="
PublicationRefType "
minOccurs ="
0 ">
<
xs:keyref name ="
PublicationResourceKeyref_Descr "
refer ="
PublicationResourceKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
<
xs:element name ="
Location "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
__TaxonNameInSource "
type ="
String255 "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
Name
ClassHierarchyConnectorType
Documentation
Used for class hierarchies (taxonomies)
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<ServiceProvider>
String255 </ServiceProvider>
[0..1] ? <FreeFormDescription>
String255 </FreeFormDescription>
[1] ? <Annotation>
StringN </Annotation>
[0..1] ? Start Sequence [0..1] End Sequence </...>
Schema Component Representation
<
xs:complexType name ="
ClassHierarchyConnectorType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ClassHierarchyNodeType
Documentation
A node in a class hierarchy tree (biology: taxonomical hierarchy)
XML Instance Representation
<...>
Start Choice [1] ? <Synonyms>
[0..1] ? </Synonyms>
End Choice <Annotation>
StringN </Annotation>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
ClassHierarchyNodeType ">
<
xs:sequence >
<
xs:choice >
<
xs:sequence >
<
xs:element name ="
Class "
type ="
ClassRefType ">
<
xs:keyref name ="
ClassResourceKeyref_Hierarchy "
refer ="
ClassResourceKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
<
xs:element name ="
Synonyms "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Class "
type ="
ClassRefType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
ClassResourceKeyref_Syn "
refer ="
ClassResourceKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Nodes "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
<
xs:element name ="
Nodes ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:choice >
</
xs:sequence >
</
xs:complexType >
Name
ClassNameConnectorType
Documentation
Used for class names (taxon names). Provides either a simple free-form text, or a connection to an external resource
The resource connector here may be changed to a derived type that also allows to enter a structured form of taxonomic names (Genus/Higher taxon, rank, optional specific/subspecific epithets, authors). However, note that simply splitting into taxon name and authors does not work, because authors may be in the middle of the parts of the taxon name (e. g. in botanical autonyms).
Note that class is not restricted to accepted class names (compare Synonyms in ClassHierarchyNodeType)
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<ServiceProvider>
String255 </ServiceProvider>
[0..1] ? <FreeFormDescription>
String255 </FreeFormDescription>
[1] ? <Annotation>
StringN </Annotation>
[0..1] ? Start Sequence [0..1] End Sequence </...>
Schema Component Representation
<
xs:complexType name ="
ClassNameConnectorType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ClassRefType
Documentation
Defines an element with a ref attribute pointing to a Class in Resources (in biology: Class = Taxon)
Schema Component Representation
<
xs:complexType name ="
ClassRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Name
CodedDescriptionType
Documentation
Descriptions entered as data referring to the terminology elements. CodedDescriptions must fulfill more rigorous consistency requirements than natural language descriptions and are more suitable for analysis. Furthermore, language-dependent annotations are minimized so that data can be easily reorganized and translated into multiple languages.
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
Start Choice [1] ? End Choice <Annotation>
StringN </Annotation>
[0..1] ? <CharacterData>
[1] ? Start Choice [1..*] ? <ObservationSet>
[0..1] ? <Observation>
[1..*] ? </Observation>
</ObservationSet>
End Choice </CharacterData>
</...>
Schema Component Representation
<
xs:complexType name ="
CodedDescriptionType ">
<
xs:complexContent >
<
xs:extension base ="
DescriptionBaseType ">
<
xs:sequence >
<
xs:element name ="
CharacterData ">
<
xs:complexType >
<
xs:choice maxOccurs ="
unbounded ">
<
xs:element name ="
Character "
type ="
CharacterDataType ">
<
xs:keyref name ="
CharacterKeyref_Coded "
refer ="
CharacterDefinitionKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
<
xs:unique name ="
CodedDescription_UniqueCharState ">
<xs:selector xpath ="State "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
<
xs:unique name ="
CodedDescription_UniquerStatisticalMeasure ">
<xs:selector xpath ="StatisticalMeasure "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
<
xs:unique name ="
CodedDescription_UniqueCodingStatus ">
<xs:selector xpath ="CodingStatus "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
ObservationSet "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Observation "
maxOccurs ="
unbounded ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Character "
type ="
CharacterRawDataType "
maxOccurs ="
unbounded ">
<
xs:keyref name ="
CharacterKeyref_CodedObservation "
refer ="
CharacterDefinitionKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
<
xs:unique name ="
CodedObservation_UniqueCharState ">
<xs:selector xpath ="State "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
CodedObservation_UniqueCharacter ">
<xs:selector xpath ="Character "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:choice >
</
xs:complexType >
<
xs:unique name ="
CodedDescription_UniqueCharacter ">
<xs:selector xpath ="Character "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
StateDefBaseType
< CodingStatusDefType (by extension)
Sub-types:
None
Name
CodingStatusDefType
Documentation
Based on StateDefBaseType; for CodingStatus values
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<Annotation>
StringN </Annotation>
[0..1] ? <Generalization>
[1] ? </Generalization>
</...>
Schema Component Representation
<
xs:complexType name ="
CodingStatusDefType ">
<
xs:complexContent >
<
xs:extension base ="
StateDefBaseType ">
<
xs:sequence >
<
xs:element name ="
Generalization ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ConceptTreeDefType
Documentation
Defines an entire concept tree
(which may be a single tree node containing a flat list)
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<Annotation>
StringN </Annotation>
[0..1] ? <__Complete>
xs :boolean </__Complete>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
ConceptTreeDefType ">
<
xs:sequence >
<
xs:element name ="
Label "
type ="
SimpleLabelType ">
<
xs:unique name ="
CharTree_UniqueLabelRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Roles "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
__Complete "
type ="
xs :boolean"
default ="
false "
minOccurs ="
0 "/>
<
xs:element name ="
__MinimumExpertiseLevel "
type ="
ExpertiseLevelEnum "
default ="
1 "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ConceptTreeNodeType
Documentation
A node in a concept tree
XML Instance Representation
<...
key="KeyValue [1] " debugkey="xs :string [0..1] ? " >
<Annotation>
StringN </Annotation>
[0..1] ? <DependencyRules>
[0..1] ? </DependencyRules>
<GenericStates>
[0..1] ? </GenericStates>
Start Choice [1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
ConceptTreeNodeType ">
<
xs:sequence >
<
xs:element name ="
Label "
type ="
LabelPlusWording3Type "
minOccurs ="
0 ">
<
xs:unique name ="
CharTreeNode_UniqueLabelRepresentation ">
<xs:selector xpath ="Representation "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
DependencyRules "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
OnlyApplicableIf "
type ="
CharacterStateRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
CharDependency_UniqueControllingStateRefs ">
<xs:selector xpath ="State "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
InapplicableIf "
type ="
CharacterStateRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
CharDependency_UniqueControllingStateRefs2 ">
<xs:selector xpath ="State "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
GenericStates "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
<
xs:unique name ="
GenericState_UniqueLabelText ">
<xs:selector xpath ="StateDefinition/Label/Representation "/>
<xs:field xpath ="Text "/>
<xs:field xpath ="@audience "/>
</
xs:unique >
</
xs:element >
<
xs:choice >
<
xs:element name ="
Nodes "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Character "
type ="
CharacterRefType ">
<
xs:keyref name ="
CharacterKeyref_Node "
refer ="
CharacterDefinitionKey ">
<xs:selector xpath =". "/>
<xs:field xpath ="@ref "/>
</
xs:keyref >
</
xs:element >
</
xs:choice >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
Name
CreatorsType
Documentation
Creators = authors, editors or contributors. At least one of Authors/Editors is required.
XML Instance Representation
<...>
Start Choice [1] ? End Choice </...>
Schema Component Representation
<
xs:complexType name ="
CreatorsType ">
<
xs:sequence >
<
xs:choice >
<
xs:sequence >
<
xs:element name ="
Authors "
type ="
AgentRefsType ">
<
xs:unique name ="
Authors_UniqueAgent ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Editors "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Editors_UniqueAgent ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
<
xs:element name ="
Editors "
type ="
AgentRefsType ">
<
xs:unique name ="
Editors2_UniqueAgent ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:choice >
<
xs:element name ="
Contributors "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Contributors_UniqueAgent ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
<
xs:element name ="
Translators "
type ="
AgentRefsType "
minOccurs ="
0 ">
<
xs:unique name ="
Translators_UniqueAgent ">
<xs:selector xpath ="Agent "/>
<xs:field xpath ="@ref "/>
</
xs:unique >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Name
DescribedObjectConnectorType
Documentation
Used to define objects that are described (collected and preserved objects as well as objects that have only been observed). In biology a collected object is called a specimen.
Provides either a simple free-form text, or a connection to an external resource.