DTD: Coding requirements for attribute-domain modules
The vocabulary modules that define attribute domains have
additional coding requirements. The module must include a parameter
entity for the new attribute, which can be referenced in document-type
shells, as well as a general entity that
specifies the contribution to the @specializations
attribute for the attribute domain.
The name of an attribute domain is the name of the attribute
plus Att. For example, for the attribute named
@deliveryTarget
, the attribute-domain name is "deliveryTargetAtt". The
attribute-domain name is used to construct entity names for the domain.
- Parameter entity name and value
- The name of the parameter entity is the attribute-domain name,
followed by the literal
-d-attribute
. The value of the parameter entity is a DTD declaration for the attribute. - General entity name and value
- The general entity name is the
attribute-domain name, followed by the literal
-d-Att
. The value of the text entity is the@specializations
attribute contribution for the module. See The specializations attribute rules and syntax for details on how to construct this value.
Example
This section is non-normative.
The @deliveryTarget
attribute can be defined in a vocabulary module using
the following two entities.
<!ENTITY % deliveryTargetAtt-d-attribute
"deliveryTarget CDATA #IMPLIED"
>
<!ENTITY deliveryTargetAtt-d-att "@props/deliveryTarget" >