operator
element-declaration with the given properties.
create-element-declaration element-name
attributes attribute-declarations
(case-sensitive case-sensitivity)?
content content-model
The operator create-element-declaration can be used to create a new element declaration.
The element-name is a string expression that becomes the declared name of the new element, and the
content of the new element declaration is taken from the content-model argument.
The attribute-declarations argument is a shelf of attribute-declaration values. Each of the
items that has a key specifies the declaration of the attribute whose name matches the key. The shelf may also
contain keyless items, whose values must be attribute-declared-implied. These items are used as
fallbacks for specified attributes whose name doesn't match any of the given keys.
For example, the following expression specifies an element named Text that requires an
attribute named language, but also accepts any other attribute:
create-element-declaration "Text"
attributes { create-attribute-declaration attribute-declared-name
default attribute-declared-required with key "language",
create-attribute-declaration attribute-declared-cdata
default attribute-declared-implied }
content mixed-content-model
The case-sensitivity argument is a switch that determines how the specified attribute
names and values are matched against the declared ones. An element-declaration obtained from a
compiled XML DTD is always case-sensitive, while one from an SGML DTD is typically not. A hand-crafted element
declaration returned by this function may choose one or the other. The declared attribute names and tokens are
not affected by this argument. If the argument is not specified, the matching will be case-sensitive by default.