Schema
default namespace d24437953e1a1480 = "http://www.isocat.org/ns/dcif"
namespace local = ""
namespace inh = inherit

start = dataCategorySelection

dataCategorySelection =
element dataCategorySelection
{
attribute dcif-version { "1.1" },
attribute name { text }?,
attribute owner { text }?,
( globalInformation? & dataCategory+ )
}

globalInformation = element globalInformation { ( textany )+ }

dataCategory =
element dataCategory
{
attribute pid { xsd:anyURI },
dataCategorySummary?,
dataCategoryLineage?,
(
( attribute type { "complex""simple" } )
| ( complexDataCategorysimpleDataCategory )
| ( administrationInformationSectiondescriptionSection & ( complexDataCategorysimpleDataCategory ) )
)
}

dataCategorySummary =
attribute identifier { xsd:string },
attribute owner { xsd:string },
attribute version { xsd:string },
attribute name { xsd:string }?,
attribute definition { xsd:string }?

dataCategoryLineage =
attribute first { xsd:anyURI }?,
attribute previous { xsd:anyURI }?,
attribute next { xsd:anyURI }?,
attribute latest { xsd:anyURI }?

administrationInformationSection = element administrationInformationSection { administrationRecord }

administrationRecord =
element administrationRecord
{
element identifier { xsd:NCName }
element version { xsd:string }
element registrationStatus { "private""candidate""standard""deprecated""superseded" }
element origin { xsd:string }?
element justification { xsd:string }?
element explanatoryComment { xsd:string, attribute xml:lang { xsd:language }? }*
element unresolvedIssue { xsd:string, attribute xml:lang { xsd:language }? }*
element effectiveDate { xsd:date }?
element untilDate { xsd:date }?
element creation
{
element creationDate { xsd:date }
element changeDescription { xsd:string, attribute xml:lang { xsd:language }? }
}
element lastChange
{
element lastChangeDate { xsd:date }
element changeDescription { xsd:string, attribute xml:lang { xsd:language }? }
}?
}

descriptionSection =
element descriptionSection { element profile { xsd:string }+ & languageSection+ & dataElementNameSection* }

languageSection =
element languageSection
{
element language { xsd:language }
element definitionSection
{
element definition { xsd:string, attribute xml:lang { xsd:language }? }
element source { xsd:string }
element note { xsd:string, attribute xml:lang { xsd:language }? }?
}*
exampleSection*
explanationSection*
element note { xsd:string, attribute xml:lang { xsd:language }? }*
nameSection*
}

exampleSection =
element exampleSection
{
element example { xsd:string, attribute xml:lang { xsd:language }? } & element source { xsd:string }?
}

explanationSection =
element explanationSection
{
element explanation { xsd:string, attribute xml:lang { xsd:language }? } & element source { xsd:string }?
}

nameSection =
element nameSection
{
element name { attribute xml:lang { xsd:language }?, xsd:string }
element nameStatus
{
"standardized name""preferred name""admitted name""deprecated name""superseded name"
}
}

dataElementNameSection =
element dataElementNameSection { element dataElementName { xsd:string } & element source { xsd:string } }

complexDataCategory = attribute type { "complex" }, ( openDataCategoryclosedDataCategoryconstrainedDataCategory )

openDataCategory = openConceptualDomainconstrainedLinguisticSection*

openConceptualDomain = element conceptualDomain { attribute type { "open" }, element dataType { xsd:string } }

closedDataCategory = profileValueDomain+ & closedLinguisticSection*

profileValueDomain =
element conceptualDomain
{
attribute type { "closed" },
(
element dataType { xsd:string }
element profile { xsd:string }
element value { attribute pid { xsd:anyURI }, dataCategorySummary? }+
)
}

closedLinguisticSection =
element linguisticSection { attribute type { "closed" }, ( linguisticSectionvalueDomain? ) }

linguisticSection =
element language { xsd:language }
exampleSection*
explanationSection*
element note { xsd:string, attribute xml:lang { xsd:language }? }*

valueDomain =
element conceptualDomain
{
attribute type { "closed" },
( element dataType { xsd:string } & element value { attribute pid { xsd:anyURI }, dataCategorySummary? }+ )
}

constrainedDataCategory = conceptualDomainRule+ & constrainedLinguisticSection*

conceptualDomainRule =
element conceptualDomain
{
attribute type { "constrained" },
( element dataType { xsd:string } & element ruleType { xsd:string } & element rule { ( textany )+ }+ )
}

constrainedLinguisticSection =
element linguisticSection { attribute type { "constrained" }, ( linguisticSectionconceptualDomainRule* ) }

simpleDataCategory = attribute type { "simple" }, element isA { attribute pid { xsd:anyURI }, dataCategorySummary? }?

any = element * - d24437953e1a1480:* { attribute * - d24437953e1a1480:* { text }*, ( textany )* }
Index
 
start
Definitions: 1
administrationInformationSection
Definitions: 1
Referenced from:
dataCategory
administrationRecord
Definitions: 1
any
Definitions: 1
closedDataCategory
Definitions: 1
Referenced from:
complexDataCategory
closedLinguisticSection
Definitions: 1
Referenced from:
closedDataCategory
complexDataCategory
Definitions: 1
Referenced from:
dataCategory
conceptualDomainRule
Definitions: 1
constrainedDataCategory
Definitions: 1
Referenced from:
complexDataCategory
constrainedLinguisticSection
Definitions: 1
dataCategory
Definitions: 1
Referenced from:
dataCategorySelection
dataCategoryLineage
Definitions: 1
Referenced from:
dataCategory
dataCategorySelection
Definitions: 1
Referenced from:
start
dataCategorySummary
Definitions: 1
dataElementNameSection
Definitions: 1
Referenced from:
descriptionSection
descriptionSection
Definitions: 1
Referenced from:
dataCategory
exampleSection
Definitions: 1
explanationSection
Definitions: 1
globalInformation
Definitions: 1
Referenced from:
dataCategorySelection
languageSection
Definitions: 1
Referenced from:
descriptionSection
linguisticSection
Definitions: 1
nameSection
Definitions: 1
Referenced from:
languageSection
openConceptualDomain
Definitions: 1
Referenced from:
openDataCategory
openDataCategory
Definitions: 1
Referenced from:
complexDataCategory
profileValueDomain
Definitions: 1
Referenced from:
closedDataCategory
simpleDataCategory
Definitions: 1
Referenced from:
dataCategory
valueDomain
Definitions: 1
Referenced from:
closedLinguisticSection