DCMI Policy on Naming Terms

Creators: Stuart Weibel
Tom Baker
Date Issued: 2004-04-05
Latest Version: https://dublincore.org/specifications/dublin-core/naming-policy/
Release History: https://dublincore.org/specifications/dublin-core/naming-policy/release_history/
Description: This document describes the policy followed in assigning Names to DCMI terms, particularly with regard to case sensitivity.

DCMI Term Names

The Dublin Core™ Metadata Initiative maintains sets of metadata terms. Each metadata term is assigned a name -- a character string or "token" that is unique in the context of a particular DCMI term set [DCMI-TERMS]. In accordance with the DCMI Namespace Policy, the name of a term is appended to the URI of a DCMI namespace to construct a globally unique identifier (URI) for that particular term [DCMI-NAMESPACE]. The typology of DCMI metadata terms is described in the DCMI Grammatical Principles [DCMI-PRINCIPLES].

Case Policy for DCMI Term Names

Names of DCMI Elements and Element Refinements start with lowercase characters but may contain uppercase characters where a term name is comprised of multiple concatenated words. In such cases, the leading character of additional words will be capitalized to improve human-readable clarity. Examples include the names:


which are used to derive the following URIs in accordance with the DCMI Namespace Policy:


Names of Encoding Schemes identifying controlled vocabularies by acronym are represented in all uppercase characters. Examples include the names:


which are used to derive the following URIs in accordance with the DCMI Namespace Policy:


Names of Encoding Schemes other than acronyms are represented with a leading uppercase character followed by lowercase characters. Examples include the names:


which are used to derive the following URIs in accordance with the DCMI Namespace Policy:


Names of values within a DCMI-maintained controlled vocabulary such as the DCMI Type Vocabulary begin with an uppercase character followed by lowercase, but with subsequent concatenated words in the name capitalized as well. Examples include the names:


which are used to derive the following URIs in accordance with the DCMI Namespace Policy:


No DCMI Term Names will be assigned that differ from other Names only in regard to case.

Historical note

Since the mid-1990s, Dublin Core™ has developed in parallel with World-Wide Web technology, and Dublin Core™ metadata has been deployed using all of the major encoding syntaxes that have evolved. In the transition from HTML to XML, XHTML, and RDF/XML, conventions regarding the naming of metadata elements have consolidated in the wider Web community, and DCMI policy has changed to follow the emerging model of good practice.

In 1998, the Dublin Core™ element set was published using Names (at the time called Labels) which had a leading uppercase character, e.g. Title and Creator [RFC2413]. In October 2000, the DCMI Advisory Committee decided to change the Names of elements to lowercase in order to bring DCMI practice into line with conventions widely (though not universally) followed in existing Dublin Core™ applications and in the XML and RDF/XML communities more generally.

Unfortunately, this decision was propagated throughout DCMI documentation only after some delay [DC-ELEMENTS]. In the meantime, the Dublin Core™ Metadata Element Set had progressed through formal standardization channels for recognition first as NISO Z39.85-2001 and CEN Workshop Agreement CWA 13874, then as ISO 15836 -- with element Names starting in uppercase [ISO15836].

The DCMI Directorate is not aware of any applications or implementations where this inconsistency with regard to the case of element Names has caused any practical problems. For the sake of consistency, however, the Directorate will undertake to amend existing specifications as permitted by their maintenance cycles.

Confusion over case sensitivity is commonplace in Web protocols, and metadata application developers are likely to find many permutations of case in instance data and term declarations. Thus, to paraphrase a dictum from early Web protocol development, applications should:

...be rigorous in what you export, and tolerant in what you import from other applications.

In practice, this suggests that applications are well advised to normalize case when parsing terms for identity comparisons. Prudence mitigates against the use of case to distinguish between alternative identities of related terms in any namespace, and it is DCMI policy that such distinctions not be made within its own namespaces, so it is unlikely that errors would be introduced by normalizing case.







Feedback on this document

The DCMI Directorate welcomes comments and suggestions on this policy: [email protected]