Changes between Version 3 and Version 4 of CMDI 1.2/Vocabularies/Summary
- Timestamp:
- 03/05/14 13:08:03 (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CMDI 1.2/Vocabularies/Summary
v3 v4 33 33 The following changes to the General Component Schema accommodates vocabulary use for both CMD_Element and Attribute: 34 34 35 * New element <Vocabulary> in <ValueScheme>36 * <Vocabulary> may have an <enumeration> element. If so, we have an internal, closed vocabulary (imported or locally specified). If not <enumeration>, then the Vocabulary is to be considered as external, and used as a lookup mechanism.35 * New element ''Vocabulary'' in ''ValueScheme'' 36 * ''Vocabulary'' optionally has an ''enumeration'' element. If so, this defines an internal, closed vocabulary (imported or locally specified). If ''enumeration'' is not present, then the Vocabulary will be considered to be external and open, and should be accessed by means of the API by tools supporting this. 37 37 38 38 Attributes for <Vocabulary> 39 * @URI 40 * @ValueProperty (which field of the vocabulary items to return, typically prefLabel) 41 * @ValueLanguage, (preferred language of the item field value) 42 43 ==== General Component Schema changes ==== 39 * @URI (mandatory) 40 * @ValueProperty (mandatory; which field of the vocabulary items to return, typically prefLabel) 41 * @ValueLanguage (optional; preferred language of the item field value) 44 42 45 43 46 {{{ 47 <xs:complexType name="ValueScheme_type"> 48 <xs:choice> 49 <xs:element name="pattern" type="xs:string" maxOccurs="1"> 50 <xs:annotation> 51 <xs:documentation>Specification of a regular expression the element should 52 comply with.</xs:documentation> 53 </xs:annotation> 54 </xs:element> 55 <xs:element name="Vocabulary" type="Vocabulary_type"> 56 <xs:annotation> 57 <xs:documentation>Specification of an open or closed vocabulary</xs:documentation> 58 </xs:annotation> 59 </xs:element> 60 </xs:choice> 61 </xs:complexType> 44 === Instance changes === 62 45 63 <xs:complexType name="Vocabulary_type"> 64 <xs:sequence> 65 <xs:element name="enumeration" type="enumeration_type" minOccurs="0" maxOccurs="1"> 66 <xs:annotation> 67 <xs:documentation>A list of the allowed values of a controlled 68 vocabulary.</xs:documentation> 69 </xs:annotation> 70 </xs:element> 71 </xs:sequence> 72 <xs:attribute name="URI" type="xs:anyURI"/> 73 <xs:attribute name="ValueProperty" type="xs:string"/> <!-- optionally selects a label --> 74 <xs:attribute name="ValueLanguage" type="xs:string"/> <!-- optionally selects a language --> 75 </xs:complexType> 76 }}} 46 An attribute ''ValueConceptLink'' (in the CMDI namespace) will be allowed on fields that have a vocabulary linked to hold the URI of the selected value, semantically marking the chosen option 77 47 78 ==== CMD_Element example ====79 80 81 {{{82 <CMD_Element83 name="Language"84 CardinalityMax="1"85 CardinalityMin="1">86 <ValueScheme>87 <Vocabulary88 URI="http://openskos.org/api/languages"89 ValueProperty="skos:prefLabel"90 ValueLanguage="en">91 <enumeration>92 <item ConceptLink="http://cdb.iso.org/lg/CDB-00138580-001">Dutch</item>93 <item ConceptLink="http://cdb.iso.org/lg/CDB-00138512-001">French</item>94 ....95 </enumeration>96 </Vocabulary>97 </ValueScheme>98 </CMD_Element>99 100 }}}101 48 === Impact on tools === 102 49 * Metadata editors must facilitate vocabulary lookup. Arbil, as the most generic editor - should be prioritized.