###### 3.1.5.1.9 elementdef

The <elementdef> element identifies an element on which an attribute is enumerated. When the <elementdef> is left out of an <enumerationdef> element, the enumeration is bound to the attribute in all elements.

###### Contains

Doctype | Content model
subjectScheme | ( (data or data-about) (any number) )

###### Contained by

Doctype | Content model
subjectScheme | enumerationdef

###### Inheritance

- topic/data subjectScheme/elementdef

###### Example

In this example, the <lomDifficulty> element has been specialized from the <data> element. The value attribute on the <lomDifficulty> element (but not the value attribute on other elements) is bound to a specific set of values. This means that processors should limit that attribute on that element to the values veryEasy, easy, medium, difficult, or veryDifficult.

    <subjectScheme>
      <subjectdef keys="difficulty">
        <subjectdef keys="veryEasy"/>
        <subjectdef keys="easy"/>
        <subjectdef keys="medium"/>
        <subjectdef keys="difficult"/>
        <subjectdef keys="veryDifficult"/>
      </subjectdef>
      ...
      <enumerationdef>
        <elementdef name="lomDifficulty"/>
        <attributedef name="value"/>
        <subjectdef keyref="difficulty"/>
      </enumerationdef>
    </subjectScheme>

###### Attributes

Name | Description | Data Type | Default Value | Required?
name | Defines the element for which an attribute enumeration is defined. | CDATA | #REQUIRED | Yes
id-atts attribute group (id, conref, conrefend, conaction, conkeyref) | A set of related attributes, described in 3.4.1.4 id-atts attribute group |  |  |
status | The modification status of the current element. | new | changed | deleted | unchanged | -dita-use-​conref-​target | #IMPLIED | No
translate | Indicates whether the content of the element should be translated or not. The DITA architectural specification contains a list of each OASIS DITA element and its common processing default for the translate value. | yes | no | -dita-use-​conref-​target | #IMPLIED | No
base | A generic attribute that has no specific purpose. It is intended to act as a base for specialized attributes that have a simple value syntax like the conditional processing attributes (one or more alphanumeric values separated by whitespace), but is not itself a filtering or flagging attribute. | CDATA | #IMPLIED | No
global-atts attribute group (xtrf, xtrc) | A set of related attributes, described in 3.4.1.2 global-atts attribute group |  |  |
class, outputclass | Common attributes described in 3.4.1.9 Other common DITA attributes |  |  |

Previous Topic: 3.1.5.1.8 enumerationdef

Next Topic: 3.1.5.1.10 attributedef

Parent Topic: 3.1.5.1 Subject scheme maps

Sibling Topics:

3.1.5.1.1 subjectScheme

3.1.5.1.2 schemeref

3.1.5.1.3 hasInstance

3.1.5.1.4 hasKind

3.1.5.1.5 hasNarrower

3.1.5.1.6 hasPart

3.1.5.1.7 hasRelated

3.1.5.1.8 enumerationdef

3.1.5.1.10 attributedef

3.1.5.1.11 defaultSubject

3.1.5.1.12 subjectHead

3.1.5.1.13 subjectHeadMeta

3.1.5.1.14 subjectdef

3.1.5.1.15 relatedSubjects

3.1.5.1.16 subjectRelTable

3.1.5.1.17 subjectRelHeader

3.1.5.1.18 subjectRel

3.1.5.1.19 subjectRole