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
Contains only infrastructure: GenerationMetadata, ProjectDefinition, Resources!
This version has been created only for the purpose of focussing the discussion of the SDD working group.
It is NOT a functional schema!
Should audiences become a root section? Would a predefined set of audiences be included in multiple projects?
ResourceConnectors and references to these objects:
Metadata (application, revision, IPR; Creators and RevisionData are closely related to the AgentRefsType defined above):
Annotations of objects occur together with labels or similar identifying objects. However, are not audience-specific and separate from the Label collection:
Key/ref infrastructure:
Basic simple types:
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!
Schema Component Representation
<
xs:element name ="
Document ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
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
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: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 >
<
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 >
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 ="
Location "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
__TaxonNameInSource "
type ="
String255 "
minOccurs ="
0 "/>
</
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:sequence >
</
xs:choice >
<
xs:element name ="
Contributors "
type ="
AgentRefsType "
minOccurs ="
0 "/>
<
xs:element name ="
Translators "
type ="
AgentRefsType "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
FormattedSimpleTextType
Documentation
Allows basic character formatting using xhtml elements plus three semantic elements (citationauthor, taxonauthor, taxon; intended to be rendered formatted and for analysis). Note that no further formatting is supported within the semantic elements (taxon etc.).
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 </...>
Schema Component Representation
<
xs:complexType name ="
FormattedSimpleTextType "
mixed ="
true ">
<
xs:choice minOccurs ="
0 "
maxOccurs ="
unbounded ">
<xs:element name ="br "/>
<
xs:element name ="
ins ">
<
xs:complexType >
<
xs:complexContent >
<
xs:extension base ="
FormattedSimpleTextType ">
<
xs:attribute name ="
cite "
type ="
xs :anyURI"
use ="
optional "/>
<
xs:attribute name ="
datetime "
type ="
xs :dateTime"/>
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
del ">
<
xs:complexType >
<
xs:complexContent >
<
xs:extension base ="
FormattedSimpleTextType ">
<
xs:attribute name ="
cite "
type ="
xs :anyURI"
use ="
optional "/>
<
xs:attribute name ="
datetime "
type ="
xs :dateTime"/>
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
taxon "
type ="
StringN "/>
<
xs:element name ="
citationauthor "
type ="
StringN "/>
<
xs:element name ="
taxonauthor "
type ="
StringN "/>
</
xs:choice >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
GenerationMetadataSectionType
Documentation
Describes the application or script that produced this document (whether it has been authored there or not).
The information is transient (it informs the import process, but is discarded after import). Intended for debugging purposes and to improve import quality (esp. if some generators are known to produce problematic code).
Furthermore, attributes describe whether the data contained in the document are complete or an excerpt of a larger data set. More information at: http://160.45.63.11/Projects/TDWG-SDD/docs/SDD_S1_GenerationMetadata.html .
XML Instance Representation
<...
GeneratorName="String255 [1] ? " GeneratorVersion="String255 [1] ? " GeneratorNotes="String255 [0..1] ? " Routine="String255 [0..1] ? " TransformingScripts="String255 [0..1] ? " TimeStamp="xs :dateTime [1] ? " TerminologyIsExcerpt="xs :boolean [0..1] ? " DescriptionIsExcerpt="xs :boolean [0..1] ? " UpdateQueryURI="xs :anyURI [0..1] ? " />
Schema Component Representation
<
xs:complexType name ="
GenerationMetadataSectionType ">
<
xs:attribute name ="
GeneratorName "
type ="
String255 "
use ="
required "/>
<
xs:attribute name ="
GeneratorVersion "
type ="
String255 "
use ="
required "/>
<
xs:attribute name ="
GeneratorNotes "
type ="
String255 "
use ="
optional "/>
<
xs:attribute name ="
Routine "
type ="
String255 "
use ="
optional "/>
<
xs:attribute name ="
TransformingScripts "
type ="
String255 "
use ="
optional "/>
<
xs:attribute name ="
TimeStamp "
type ="
xs :dateTime"
use ="
required "/>
<
xs:attribute name ="
TerminologyIsExcerpt "
type ="
xs :boolean"
use ="
optional "
default ="
false "/>
<
xs:attribute name ="
DescriptionIsExcerpt "
type ="
xs :boolean"
use ="
optional "
default ="
false "/>
<
xs:attribute name ="
UpdateQueryURI "
type ="
xs :anyURI"
use ="
optional "/>
</
xs:complexType >
Name
LocalityConnectorType
Documentation
Used for resources like geographical names or places. Provides either
a simple free-form text, or a
connection to an external resource.
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] ? </...>
Schema Component Representation
<
xs:complexType name ="
LocalityConnectorType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
LocalityRefsType
Documentation
A collection of LocalityRefType elements
Schema Component Representation
<
xs:complexType name ="
LocalityRefsType ">
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
LocalityRefType
Documentation
Defines an element with a ref attribute pointing to a Locality in Resources (Resources/Geography/Locality)
XML Instance Representation
<...
ref="KeyValue [1] " debugref="xs :string [0..1] ? " />
Schema Component Representation
<
xs:complexType name ="
LocalityRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Name
MediaResourceConnectorType
Documentation
Extends resource connector type with optional encoded data content (esp. images embedded in xml document) and with a Type (Image/Audio/Video, etc.).
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] <EncodedData>
xs :base64Binary </EncodedData>
[0..1] ? End Sequence </...>
Schema Component Representation
<
xs:complexType name ="
MediaResourceConnectorType ">
<
xs:complexContent >
<
xs:extension base ="
ResourceConnectorBaseType ">
<
xs:sequence minOccurs ="
0 ">
<
xs:element name ="
EncodedData "
type ="
xs :base64Binary"
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
MediaResourceRefsType
Documentation
A collection of MediaResourceRef elements.
Schema Component Representation
<
xs:complexType name ="
MediaResourceRefsType ">
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
MediaResourceRefType
Documentation
Defines an element with a ref attribute pointing to a MediaResource defined in Resources (Resources/MediaResources/MediaResource)
XML Instance Representation
<...
ref="KeyValue [1] " debugref="xs :string [0..1] ? " />
Schema Component Representation
<
xs:complexType name ="
MediaResourceRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ProjectDefinitionSectionType
Documentation
Required information defining
the project itself.
XML Instance Representation
<...>
<GloballyUniqueName>
xs :anyURI </GloballyUniqueName>
[0..1] ? <Version>
[1] ? <Major>
xs :nonNegativeInteger </Major>
[1] ? <Minor>
xs :nonNegativeInteger </Minor>
[0..1] ? <Increment>
xs :nonNegativeInteger </Increment>
[0..1] ? <PublicationDate>
xs :date </PublicationDate>
[0..1] ? </Version>
<AudienceSpecificData>
[1] ? </AudienceSpecificData>
<Annotation>
StringN </Annotation>
[0..1] ? <WebAddress>
xs :anyURI </WebAddress>
[0..1] ? <HistoryWebAddress>
xs :anyURI </HistoryWebAddress>
[0..1] ? <__LanguageRules>
[0..1] ? <LanguageRule
lang="xs :language [1] " dir="xs :token (value comes from list: {'ltr'|'rtl'}) [0..1] " >
[1..*] ? <Annotation>
StringN </Annotation>
[0..1] ? </LanguageRule>
</__LanguageRules>
</...>
Schema Component Representation
<
xs:complexType name ="
ProjectDefinitionSectionType ">
<
xs:sequence >
<
xs:element name ="
GloballyUniqueName "
type ="
xs :anyURI"
minOccurs ="
0 "/>
<
xs:element name ="
Version ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
Major "
type ="
xs :nonNegativeInteger"/>
<
xs:element name ="
Minor "
type ="
xs :nonNegativeInteger"
default ="
0 "
minOccurs ="
0 "/>
<
xs:element name ="
Increment "
type ="
xs :nonNegativeInteger"
default ="
0 "
minOccurs ="
0 "/>
<
xs:element name ="
PublicationDate "
type ="
xs :date"
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
AudienceSpecificData ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
WebAddress "
type ="
xs :anyURI"
minOccurs ="
0 "/>
<
xs:element name ="
HistoryWebAddress "
type ="
xs :anyURI"
minOccurs ="
0 "/>
<
xs:element name ="
__LanguageRules "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
LanguageRule "
maxOccurs ="
unbounded ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
<
xs:attribute name ="
lang "
type ="
xs :language"
use ="
required "/>
<
xs:attribute name ="
dir "
use ="
optional "
default ="
ltr ">
<
xs:simpleType >
<
xs:restriction base ="
xs :token">
<xs:enumeration value ="ltr "/>
<xs:enumeration value ="rtl "/>
</
xs:restriction >
</
xs:simpleType >
</
xs:attribute >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Super-types:
AudienceRefType
< ProjectDefRepresentationType (by extension)
Sub-types:
None
Name
ProjectDefRepresentationType
Documentation
Audience-specific
project header
information
XML Instance Representation
<...
audience="xs :Name [1] " >
<Rights>
[1] ? <CopyrightStatement>
String255 </CopyrightStatement>
[1] ? <CopyrightStatementLong>
StringN </CopyrightStatementLong>
[0..1] ? <UsageConditions>
StringN </UsageConditions>
[0..1] ? </Rights>
<GeographicalCoverage>
StringN </GeographicalCoverage>
[0..1] ? <TaxonomicCoverage>
StringN </TaxonomicCoverage>
[0..1] ? </...>
Schema Component Representation
<
xs:complexType name ="
ProjectDefRepresentationType ">
<
xs:complexContent >
<
xs:extension base ="
AudienceRefType ">
<
xs:sequence >
<
xs:element name ="
Rights ">
<
xs:complexType >
<
xs:sequence >
<
xs:element name ="
CopyrightStatement "
type ="
String255 "/>
<
xs:element name ="
CopyrightStatementLong "
type ="
StringN "
minOccurs ="
0 "/>
<
xs:element name ="
UsageConditions "
type ="
StringN "
minOccurs ="
0 "/>
<
xs:element name ="
License "
type ="
String255 "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
GeographicalCoverage "
type ="
StringN "
minOccurs ="
0 "/>
<
xs:element name ="
TaxonomicCoverage "
type ="
StringN "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Name
PublicationConnectorType
Documentation
Used for resources like publications, laboratory notes, speeches, etc. Provides either a simple free-form text, or a connection to an external resource.
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] ? </...>
Schema Component Representation
<
xs:complexType name ="
PublicationConnectorType ">
<
xs:complexContent >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
PublicationRefType
Documentation
Defines an element with a ref attribute pointing to a Publication in Resources (Resources/Publications/Publication)
XML Instance Representation
<...
ref="KeyValue [1] " debugref="xs :string [0..1] ? " />
Schema Component Representation
<
xs:complexType name ="
PublicationRefType ">
<
xs:attribute name ="
ref "
type ="
KeyValue "
use ="
required "/>
</
xs:complexType >
Super-types:
None
Sub-types:
Name
ResourceConnectorBaseType
Abstract
yes
Documentation
Abstract base type for connectors to resources (publications, class names, specimens, etc.). Provides either a simple free-form text, or a connection to an external resource.
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] ? </...>
Schema Component Representation
<
xs:complexType name ="
ResourceConnectorBaseType "
abstract ="
true ">
<
xs:sequence >
<
xs:element name ="
ServiceProvider "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
ExternalID "
type ="
String255 "
minOccurs ="
0 "/>
<
xs:element name ="
FreeFormDescription "
type ="
String255 "/>
</
xs:sequence >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
ResourcesSectionType
Documentation
Global resource definitions containing URIs or actually embedded resources (e. g. encoded images).
XML Instance Representation
<...>
<Agents>
[0..1] ? </Agents>
<Publications>
[0..1] ? </Publications>
<Geography>
[0..1] ? </Geography>
<MediaResources>
[0..1] ? </MediaResources>
</...>
Schema Component Representation
<
xs:complexType name ="
ResourcesSectionType ">
<
xs:sequence >
<
xs:element name ="
Agents "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Publications "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
Geography "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
<
xs:element name ="
MediaResources "
minOccurs ="
0 ">
<
xs:complexType >
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
</
xs:element >
</
xs:sequence >
</
xs:complexType >
Super-types:
CreatorsType
< RevisionDataType (by extension)
Sub-types:
None
Name
RevisionDataType
Documentation
RevisionData (creators, dates, revision) for project, character, glossary entry, and description data.
XML Instance Representation
<...>
Start Choice [1] ? End Choice <InitiationDate>
xs :dateTime </InitiationDate>
[1] ? <LastRevisionDate>
xs :dateTime </LastRevisionDate>
[1] ? </...>
Schema Component Representation
<
xs:complexType name ="
RevisionDataType ">
<
xs:complexContent >
<
xs:extension base ="
CreatorsType ">
<
xs:sequence >
<
xs:element name ="
InitiationDate "
type ="
xs :dateTime"/>
<
xs:element name ="
LastRevisionDate "
type ="
xs :dateTime"/>
<
xs:element name ="
RevisionStatus "
type ="
RevisionStatusEnum "
default ="
Unrevised "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
AudienceRefType
< SimpleLabelRepresentationType (by extension)
Sub-types:
None
Name
SimpleLabelRepresentationType
Documentation
Audience-specific label representations (without abbreviations or natural language reporting wordings); used e. g. for concept trees or modifier sets.
XML Instance Representation
<...
audience="xs :Name [1] " >
</...>
Schema Component Representation
<
xs:complexType name ="
SimpleLabelRepresentationType ">
<
xs:complexContent >
<
xs:extension base ="
AudienceRefType ">
<
xs:sequence >
</
xs:sequence >
</
xs:extension >
</
xs:complexContent >
</
xs:complexType >
Super-types:
None
Sub-types:
None
Name
SimpleLabelType
Documentation
A label = collection of audience-specific label representations (without abbreviations or natural language reporting wordings), used e. g. for concept trees or modifier sets.
Schema Component Representation
<
xs:complexType name ="
SimpleLabelType ">
<
xs:sequence >
</
xs:sequence >
</
xs:complexType >
Name
AnnotationGroup
Documentation
= reuse of Annotation
and ApplicationData,
i. e. designer and
application 'annotations'
XML Instance Representation
<Annotation>
StringN </Annotation>
[0..1] ?
Schema Component Representation
<
xs:group name ="
AnnotationGroup ">
<
xs:sequence >
<
xs:element name ="
Annotation "
type ="
StringN "
minOccurs ="
0 "/>
</
xs:sequence >
</
xs:group >
Super-types:
xs :byte < ExpertiseLevelEnum (by restriction)
Sub-types:
None
Name
ExpertiseLevelEnum
Content
value comes from list: {'0'|'1'|'2'|'3'|'4'|'5'}
Documentation
Restricted to integer values from 0 to 5, indicating expertise from schoolchildren to taxonomic expert. Recommendations for interpreting and choosing the expert level:
0 = unspecified
1 = elementary school (year 1 to 6)
2 = middle school (year 7 to 10)
3 = high school (year 11 above) and general public (trying to avoid any specialized terminology or jargon)
4 = university students or (partly) trained personnel (using terminology, but avoiding or explaining problematic terminology)
5 = experts (using the full range of terminology)
Schema Component Representation
<
xs:simpleType name ="
ExpertiseLevelEnum ">
<
xs:restriction base ="
xs :byte">
<xs:enumeration value ="0 "/>
<xs:enumeration value ="1 "/>
<xs:enumeration value ="2 "/>
<xs:enumeration value ="3 "/>
<xs:enumeration value ="4 "/>
<xs:enumeration value ="5 "/>
</
xs:restriction >
</
xs:simpleType >
Super-types:
xs :nonNegativeInteger < KeyValue (by restriction)
Sub-types:
None
Name
KeyValue
Content
Base XSD Type: nonNegativeInteger
Documentation
This allows to define (and redefine) the value type for keys and keyrefs (except for audience keys, which are xs:Name)
Schema Component Representation
<
xs:simpleType name ="
KeyValue ">
<
xs:restriction base ="
xs :nonNegativeInteger"/>
</
xs:simpleType >
Super-types:
xs :Name < MediaResourceTypeEnum (by restriction)
Sub-types:
None
Name
MediaResourceTypeEnum
Content
value comes from list: {'Image'|'Audio'|'Video'|'FormattedDocument'|'__Other'}
Documentation
Enumerated list to improve application interoperability. It is unclear whether a simple SDD list(as presented here ), or a generic MIME type support is more desirable.
Schema Component Representation
<
xs:simpleType name ="
MediaResourceTypeEnum ">
<
xs:restriction base ="
xs :Name">
<xs:enumeration value ="Image "/>
<xs:enumeration value ="Audio "/>
<xs:enumeration value ="Video "/>
<xs:enumeration value ="FormattedDocument "/>
<xs:enumeration value ="__Other "/>
</
xs:restriction >
</
xs:simpleType >
Super-types:
xs :Name < RevisionStatusEnum (by restriction)
Sub-types:
None
Name
RevisionStatusEnum
Content
value comes from list: {'Unrevised'|'RevisionLevel1'|'RevisionLevel2'|'RevisionLevel3'|'RevisionLevel4'|'RevisionLevel5'|'FullyRevised'}
Documentation
RevisionStatus is applied to the project as a whole as well as to individual descriptions.
Schema Component Representation
<
xs:simpleType name ="
RevisionStatusEnum ">
<
xs:restriction base ="
xs :Name">
<xs:enumeration value ="Unrevised "/>
<xs:enumeration value ="RevisionLevel1 "/>
<xs:enumeration value ="RevisionLevel2 "/>
<xs:enumeration value ="RevisionLevel3 "/>
<xs:enumeration value ="RevisionLevel4 "/>
<xs:enumeration value ="RevisionLevel5 "/>
<xs:enumeration value ="FullyRevised "/>
</
xs:restriction >
</
xs:simpleType >
Super-types:
xs :normalizedString < String255 (by restriction)
Sub-types:
None
Name
String255
Content
Base XSD Type: normalizedString
Documentation
normalized string restricted to 1..255 character length (i. e. required, may not be empty string)
Schema Component Representation
<
xs:simpleType name ="
String255 ">
<
xs:restriction base ="
xs :normalizedString">
<xs:minLength value ="1 " fixed ="true "/>
<xs:maxLength value ="255 " fixed ="true "/>
<xs:whiteSpace value ="collapse " fixed ="false "/>
</
xs:restriction >
</
xs:simpleType >
Super-types:
xs :normalizedString < StringN (by restriction)
Sub-types:
None
Name
StringN
Content
Base XSD Type: normalizedString
Documentation
normalized string required to be at least 1 character long (i. e. either element/attribute may be optional, but if they are required the content must not be an empty string)
Schema Component Representation
<
xs:simpleType name ="
StringN ">
<
xs:restriction base ="
xs :normalizedString">
<xs:minLength value ="1 " fixed ="false "/>
<xs:whiteSpace value ="collapse " fixed ="false "/>
</
xs:restriction >
</
xs:simpleType >
Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.
All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all .
Choice Model Group
Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice .
Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.
Key Constraint Like Uniqueness Constraint , but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .
Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint . See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .
Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups .
Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil , from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.
Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.
Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.
Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).
Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence .
Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.
Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.
Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.
Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .