Revision of CustomMetadataView from Tue, 02/27/2018 - 20:48

Revisions allow you to track differences between multiple versions of your content, and revert back to older versions.

Custom Metadata allows for the creation of specialized key value pairs, values, and controlled vocabularies with DDI classes. This view was created to demonstrate the use of this set of classes.

The DDI4 CustomMetadataView allows for the definition of a set of keys and their interrelationships. This structure can be shared and reused by a community.
These keys can be used in key-value pairs to enter metadata that is more actionable than would be if an uncontrolled set of keys were employed.

The keys and their interrelationships are defined in a CustomStructure which is a collection of CustomItems. Each CustomItem defines a key, giving it a cardinality and associating it with a RepresentedVariable and a ValueDomain. The set of CustomItems can be arranged into a structure, for example a hierarchy, by a CustomItemRelationStructure.

Once the structure is defined, it can be used in a CustomInstance. This is a collection of CustomValues. A CustomValue contains a key-value pair where the key corresponds to a previously defined CustomItem. A CustomValue also may be associated with an InstanceVariable. The CustomValues may also be structured by a CustomValueRelationStructure.

Controlled Vocabularies in DDI4
The representation of a controlled vocabulary in DDI4 consists of three classes:
ControlledVocabulary – The structured collection of vocabulary entries
VocabularyEntry – Assigns a definition to a term
VocabularyRelationStructure – Allows for the description of a complex structure among the terms, such as a hierarchy

The ControlledVocabulary uses a set of VocabularyEntryIndicators to delineate the entries in the vocabulary. These may be ordered with an index.
The VocabularyRelationStructure uses a set of VocabularyEntryRelations to describe relationships among the vocabulary entries. A "source" entry might have a relationship to several "target" entries, for example one entry (e.g. Vehicle) might be a more general term for several other terms (e.g. car, bike, skateboard). This relationship may be described with a semantic, a relationSpecification (e.g. GeneralSpecific), and whether the relation is total or not.

Include in build?: