Changes between Version 101 and Version 102 of CMDI 1.2/Specification


Ignore:
Timestamp:
01/19/16 16:38:31 (8 years ago)
Author:
Twan Goosen
Comment:

small fixes forgotten during first pass

Legend:

Unmodified
Added
Removed
Modified
  • CMDI 1.2/Specification

    v101 v102  
    2626
    2727=== Terminology ===
    28 The key words `MUST`, `MUST NOT`, `REQUIRED`, `SHALL`, `SHALL NOT`, `SHOULD`, `SHOULD NOT`, `RECOMMENDED`, `MAY`, and `OPTIONAL` in this document are to be interpreted as described in [#REF_RFC_2119 RFC2119].
     28The keywords `MUST`, `MUST NOT`, `REQUIRED`, `SHALL`, `SHALL NOT`, `SHOULD`, `SHOULD NOT`, `RECOMMENDED`, `MAY`, and `OPTIONAL` in this document are to be interpreted as described in [#REF_RFC_2119 RFC2119].
    2929
    3030=== Glossary ===
     
    120120   * A schema definition by which the correctness of a __CMD instance __with respect to the __CMD profile __it pertains to can be evaluated. May be expressed as __XML Schema __but also in another XML schema language.
    121121 * '''XML element declaration'''
    122    * A component in an XML Schema that constrains the structure and content of a specific XML element, in accordance with the W3C Recommendation for XML Schema: <https://www.w3.org/TR/xmlschema11-1/#cElement_Declarations>.
     122   * A component in an __XML Schema__ that constrains the structure and content of a specific __XML element__, in accordance with the W3C Recommendation for XML Schema: <https://www.w3.org/TR/xmlschema11-1/#cElement_Declarations>.
    123123 * '''XML attribute declaration'''
    124    * A component in an XML Schema that constrains the structure and content of a specific XML attribute, in accordance with the W3C Recommendation for XML Schema: <https://www.w3.org/TR/xmlschema11-1/#cAttribute_Declarations>.
     124   * A component in an __XML Schema__ that constrains the structure and content of a specific __XML attribute__, in accordance with the W3C Recommendation for XML Schema: <https://www.w3.org/TR/xmlschema11-1/#cAttribute_Declarations>.
    125125 * '''Foreign attribute'''
    126    * An XML attribute defined in a namespace other than those declared inby CMDI, to be included in CMD instances as additional information targeted to specific receivers or applications.
     126   * An __XML attribute__ defined in a __namespace__ other than those declared in CMDI, to be included in __CMD instances__ as additional information targeted to specific receivers or applications.
    127127
    128128=== Normative References ===
     
    149149[=#typography_namespaces]
    150150The following typographic conventions for XML fragments will be used throughout this specification:
    151  * `<prefix:Element>` \\ An XML element with the Generic Identifier ''Element'' that is bound to an XML namespace denoted by the prefix ''prefix''.
     151 * `<prefix:Element>` \\ An XML element with the generic identifier ''Element'' that is bound to an XML namespace denoted by the prefix ''prefix''.
    152152 * `@attr` \\ An XML attribute with the name ''attr''
    153153{{{#!comment
     
    174174
    175175= Structure of CMDI files =
     176[=#structureOfCmdi]
    176177{{{#!div class="notice system-message"
    177178Responsible for this section: Oddrun
     
    184185A CMDI file contains the actual metadata of one specific resource (hereafter referred to as the ''described resource''),  and might also be referred to as a CMD record. All CMDI files have the same structure at the top level. At a lower level, parts of its structure  are defined by the CMD profile upon which it is based.
    185186== The main structure ==
    186 A CMDI file has the root element `<CMD>` with 4 subelements:
     187A CMDI file has the root element `<CMD>` with 4 sub-elements:
    187188* The `<Header>` element, containing certain administrative information about the CMDI file, i.e. metadata about the file itself
    188 * The `<Resources>` element, listing resource proxies and their interrelations, by the following subelements (ordered)
     189* The `<Resources>` element, listing resource proxies and their interrelations, by the following sub-elements (ordered)
    189190  * `<ResourceProxyList>`, containing a list of `<ResourceProxy>` elements, each referencing a file contained in or closely related to the described resource
    190191  * `<JournalFileProxyList>`, containing a list of `<JournalFileProxy>` elements, each referencing a file (“journal file”) containing provenance information about the described resource
    191192  * `<ResourceRelationList>,` containing a list of `<ResourceRelation>` elements, each representing a relationship between 2 resource files (as listed in the `<ResourceProxyList>`)
    192193* The `<IsPartOfList>` element, containing a list of `<IsPartOf>` elements, each referencing a larger external resource of which the described resource (as a whole) forms a part
    193 * The `<Components>` element, containing one subelement corresponding to – and in turn structured according to - the CMD profile applied. Here the descriptive metadata of the resource are found.
    194 
    195 The first three elements (`<Header>`, `<Resources>`and `<IsPartOfList>`) constitute the ''CMD instance envelope''and reside in the `cmd` namespace. The ''CMD instance payload'' contains the `<Components>`element, which (profile specific) substructure  exists in the profile-specific namespace (prefix `cmdp`), possibly adorned with attributes in the cmd  namespace.
    196 
    197 A detailed specification of the above mentioned parts of a CMD instance is given in the next four sections. In addition to this,  foreign attributes (XML attributes of other namespaces than those defined in the [#typography_namespaces Typographic and XML Namespace conventions])  `MAY` occur anywhere in `<Header>`, `<Resources>`and `<IsPartOfList>`elements and on the `<Components>` element (but not on any of its children).
     194* The `<Components>` element, containing one sub-element corresponding to – and in turn structured according to - the CMD profile applied. Here the descriptive metadata of the resource are found.
     195
     196The first three elements (`<Header>`, `<Resources>` and `<IsPartOfList>`) constitute the ''CMD instance envelope'' and reside in the `cmd` namespace. The ''CMD instance payload'' contains the `<Components>` element, which (profile specific) substructure  exists in the profile-specific namespace (prefix `cmdp`), possibly adorned with attributes in the cmd  namespace.
     197
     198A detailed specification of the above mentioned parts of a CMD instance is given in the next four sections. In addition to this,  foreign attributes (XML attributes of other namespaces than those defined in the [#typography_namespaces Typographic and XML Namespace conventions])  `MAY` occur anywhere in `<Header>`, `<Resources>` and `<IsPartOfList>` elements and on the `<Components>` element (but not on any of its children).
    198199
    199200=== Examples ===
     
    585586[=#transformationIntoSchema]
    586587A CMD instance document that is serialised as XML according this specification `SHOULD` contain a reference to the location of a CMD profile schema. The infrastructure `MUST` provide a mechanism to derive such a schema for any specific CMD profile on basis of its definition and that of the CMD components that it references. This section specifies how different aspects of a CMD specification should be transformed into elements of a schema definition. The primary schema language targeted is XML Schema, although the infrastructure `MAY` provide support for other schema languages, such as DDML or Relax NG.
    587 A CMD profile schemas `MUST` be derived from a CMD profile specification.
     588A CMD profile schema `MUST` be derived from a CMD profile specification.
    588589
    589590== General properties of the CMD profile schema definition ==
    590591
    591592A CMD profile schema `MUST` allow for the evaluation of a CMD instance on all levels of description defined in one specific CMD profile.
    592 The schema `MUST` require the presence of a CMD instance envelope as described in section "Structure of CMDI files". The value of the `<MdProfile>` header item in the CMD instance envelope `MUST` only be valid if it is equal to the profile id as specified in the associated CMD profile.
     593The schema `MUST` require the presence of a CMD instance envelope as described in section [#structureOfCmdi Structure of CMDI files]. The value of the `<MdProfile>` header item in the CMD instance envelope `MUST` only be valid if it is equal to the profile id as specified in the associated CMD profile.
    593594
    594595The CMD profile schema `SHOULD` include, as a matter of annotation, a copy of (a subset of) the information contained in the `Header` section of the CMD profile from which it is derived.
     
    596597The transformation `MAY` make use of embedded component identifiers in the CMD component definition to derive (complex) types that can be reused throughout the schema definition.
    597598
    598 The schema `MUST` declare a profile specific payload namespace in addition to the fixed, global namespaces that are used (in particular `cmd` and `cue`). This namespace, with `RECOMMENDED` prefix `cmdp`, `MUST` have the following format: `http://www.clarin.eu/cmd/1/profiles/{profileId}`, where `{profileId} ` refers to the identifier of the profile from which the schema is derived in the Component Registry. All XML elements and XML attributes derived from CMD components, CMD elements and CMD attributes `MUST` be declared in this namespace.
     599The schema `MUST` declare a profile specific payload namespace in addition to the fixed, global namespaces that are used (in particular `cmd` and `cue`). This namespace, with `RECOMMENDED` prefix `cmdp`, `MUST` have the following format: `http://www.clarin.eu/cmd/1/profiles/{profileId}`, where `{profileId}` refers to the identifier of the profile from which the schema is derived in the Component Registry. All XML elements and XML attributes derived from CMD components, CMD elements and CMD attributes `MUST` be declared in this namespace.
    599600
    600601== Interpretation of CMD component definitions in the CCSL ==
     
    643644XML attributes of CMD elements in the 'cue' namespace `SHOULD` be copied into the XML element declaration, in which case the XML attribute name, namespace and value `SHOULD` be preserved.
    644645
    645 An optional XML Attribute `@cmd:ValueConceptLink` of type ''xs:anyURI'' `MUST` be allowed on the XML element derived from a CMD element that has a vocabulary with XML attribute `@URI` defined (see section "Content model for CMD elements and CMD attributes in the schema definition").
     646An optional XML attribute `@cmd:ValueConceptLink` of type ''xs:anyURI'' `MUST` be allowed on the XML element derived from a CMD element that has a vocabulary with XML attribute `@URI` defined (see section "Content model for CMD elements and CMD attributes in the schema definition").
    646647
    647648The derivation of a content model for the XML element declaration on basis of a CMD element is described below.