Changes between Version 236 and Version 237 of CMDI 1.2/Specification


Ignore:
Timestamp:
10/04/16 10:02:03 (8 years ago)
Author:
Twan Goosen
Comment:

Another section of CCSL

Legend:

Unmodified
Added
Removed
Modified
  • CMDI 1.2/Specification

    v236 v237  
    731731[=#valuerestrictions]
    732732== Value schemes for elements and attributes ==
    733 Apart from standard XML schema datatypes the content of a CMD element or attribute instance can be restricted by two means. The `<ValueScheme>` element `MAY` contain either an XML element `<pattern>` with the specification of a regular expression the element/attribute should comply with, or the definition of a controlled vocabulary of allowed values. CMDI 1.2 supports two approaches to describe such a vocabulary:
    734 
    735  * specifying all allowed values with `OPTIONAL` attributes for every value to include a concept link and a description of the specific value, or
    736  * referring to an external vocabulary via a URI specified in `@URI`. The `OPTIONAL` XML attributes `@ValueProperty` and `@ValueLanguage` `MAY` be used to give more information about preferred label and language in the chosen vocabulary.
    737 
    738 The order and structure described in the following table `MUST` be followed when specifying value restrictions:
     733Apart from standard XML schema datatypes the content of a CMD element or attribute instance can be restricted by two means. The `<ValueScheme>` element `MAY` contain either an XML element `<pattern>` with the specification of a regular expression the element/attribute should comply with, or the definition of a controlled vocabulary. CMDI 1.2 supports two types of  vocabularies:
     734
     735 * a closed vocabulary where all allowed values are specified with `OPTIONAL` attributes for every value to include a concept link and a description of the specific value, or
     736 * an open vocabulary by referring to an external vocabulary via a URI specified in `@URI`, where, in this case, the external vocabulary provides suggested values.
     737
     738A closed vocabulary `MAY` also refer to an external vocabulary via a URI, where the external service `MAY` be used during metadata creation or search.The `OPTIONAL` XML attributes `@ValueProperty` and `@ValueLanguage` `MAY` be used to give more information about the property and language to be used in the specified external vocabulary.
     739
     740The order and structure described in the following table `MUST` be followed when specifying value schemes:
    739741
    740742||||||||||= Name =||= Valuetype =||= Occurrences =||= Description =||
     
    743745|| |||||||| `<Vocabulary>` || `xs:complexType` || 0 or 1 || Specification of a CMD vocabulary. ||
    744746|| || |||||| `@URI` || `xs:anyURI` || 0 or 1 || URI of an external vocabulary. ||
    745 || || |||||| `@ValueProperty` || `xs:string` || 0 or 1 || preferred label in the external vocabulary. ||
    746 || || |||||| `@ValueLanguage` || `xs:language` || 0 or 1 || preferred language in the external vocabulary. ||
     747|| || |||||| `@ValueProperty` || `xs:string` || 0 or 1 || Property in the external vocabulary entry that provides the value. ||
     748|| || |||||| `@ValueLanguage` || `xs:language` || 0 or 1 || Preferred language in the external vocabulary. ||
    747749|| || |||||| `<enumeration>` || `xs:complexType` || 0 or 1 || Enumeration of items from a controlled vocabulary. ||
    748750|| || || |||| `<appinfo>` || `xs:string` || 0 to 1 || End-user guidance about the value of the controlled vocabulary as a whole. ||
     
    756758
    757759=== Notes ===
    758  * A vocabulary with a non-empty enumeration of permissible values provides a closed vocabulary. Using `@URI`, an external vocabulary provided by a vocabulary service, e.g. the CLARIN vocabulary service CLAVAS, can be associated with the closed vocabulary, which allows tools to use the service’s facilities to find a value.
     760 * A vocabulary with a non-empty enumeration of permissible values provides a closed vocabulary. Using `@URI`, an external vocabulary provided by a vocabulary service, e.g., the CLARIN vocabulary service CLAVAS, can be associated with the closed vocabulary, which allows tools to use the service’s facilities to find a value.
    759761 * The `@URI` can also be used for an open vocabulary where the facilities of the vocabulary service can be used to find suggestions for an applicable value.
    760762
    761 === Example 15 Value restriction with enumeration ===
    762 
    763 This example shows a value restriction with a reference to an external vocabulary and an embedded enumeration, i.e., a closed vocabulary.
    764 
    765 {'''TODO''': add additional example of an open vocabulary}
     763=== Example 15 Value scheme with enumeration (closed vocabulary) ===
     764
     765This example shows a value scheme with a reference to an external vocabulary and an embedded enumeration, i.e., a closed vocabulary.
    766766
    767767{{{
    768768#!xml
    769769<ValueScheme>
    770     <Vocabulary URI="http://openskos.meertens.knaw.nl/iso-639-3" ValueProperty="skos:notation">
    771         <enumeration>
    772             <item AppInfo="Ghotuo (aaa)" ConceptLink="http://cdb.iso.org/lg/CDB-00132443-001">aaa</item>
    773             <item AppInfo="Alumu-Tesu (aab)" ConceptLink="http://cdb.iso.org/lg/CDB-00133770-001">aab</item>
    774             <item AppInfo="Ari (aac)" ConceptLink="http://cdb.iso.org/lg/CDB-00133769-001">aac</item>
    775             <item AppInfo="Amal (aad)" ConceptLink="http://cdb.iso.org/lg/CDB-00133768-001">aad</item>
    776             <item AppInfo="Arbëreshë Albanian (aae)" ConceptLink="http://cdb.iso.org/lg/CDB-00133767-001">aae</item>
    777             <item AppInfo="Aranadan (aaf)" ConceptLink="http://cdb.iso.org/lg/CDB-00133766-001">aaf</item>
    778             ...
    779         </enumeration>
    780     </Vocabulary>
     770     <Vocabulary URI="http://openskos.meertens.knaw.nl/iso-639-3" ValueProperty="skos:notation">
     771         <enumeration>
     772             <item AppInfo="Ghotuo (aaa)" ConceptLink="http://cdb.iso.org/lg/CDB-00132443-001">aaa</item>
     773             <item AppInfo="Alumu-Tesu (aab)" ConceptLink="http://cdb.iso.org/lg/CDB-00133770-001">aab</item>
     774             <item AppInfo="Ari (aac)" ConceptLink="http://cdb.iso.org/lg/CDB-00133769-001">aac</item>
     775             <item AppInfo="Amal (aad)" ConceptLink="http://cdb.iso.org/lg/CDB-00133768-001">aad</item>
     776             <item AppInfo="Arbëreshë Albanian (aae)" ConceptLink="http://cdb.iso.org/lg/CDB-00133767-001">aae</item>
     777             <item AppInfo="Aranadan (aaf)" ConceptLink="http://cdb.iso.org/lg/CDB-00133766-001">aaf</item>
     778             …
     779         </enumeration>
     780     </Vocabulary>
     781</ValueScheme>
     782}}}
     783
     784=== Example 16 Value scheme without enumeration but with external vocabulary (open vocabulary) ===
     785
     786This example shows a value scheme with a reference to an external vocabulary without an embedded enumeration, i.e., an open vocabulary. The external vocabulary suggests preferred labels for known organisations, but it is allowed to use other names (preferably the names of unknown organisations).
     787
     788{{{
     789#!xml
     790<ValueScheme>
     791     <Vocabulary URI="http://openskos.meertens.knaw.nl/Organisations" ValueProperty="skos:prefLabel"/>
    781792</ValueScheme>
    782793}}}
    783 === Example 16 Value restriction with pattern ===
    784 
    785 This example shows a value restriction with a regular expression for a time stamp.
     794
     795=== Example 17 Value scheme with pattern ===
     796
     797This example shows a value scheme with a regular expression for a time stamp.
    786798
    787799{{{
    788800#!xml
    789801<ValueScheme>
    790      <pattern>[0-9][0-9]:[0-9][0-9]:[0-9][0-9]:?[0-9]*</pattern>
    791 </ValueScheme>
     802      <pattern>[0-9][0-9]:[0-9][0-9]:[0-9][0-9]:?[0-9]*</pattern>
     803</ValueScheme> 
    792804}}}
    793805