att.combinable
att.combinable provides attributes indicating how multiple references to the same object in a schema
should be combined.
Module
tagdocs — Documentation Elements
Attributes
mode
mode⚓︎
specifies the effect of this declaration on its parent object.
Status
Optional
Legal values are:
- add
- this declaration is part of the current definitions. [Default]
- delete
- the object with the same identifier (and namespace in the case of an element or attribute)
as the current one is no longer part of the current definitions
- change
- this declaration changes the object of the same identifier (and namespace in the case
of an element or attribute) in the current definition
- replace
- this declaration replaces the object with the same identifier (and namespace in the
case of an element or attribute) in the current definition.
Note
An ODD processor should handle the values for mode as follows:
- add
- the object should be created (processing any children in add mode); raise an error
if the object has an identifier and an object with the same identifier (and namespace
in the case of an element or attribute) already exists.
- replace
- use this object in preference to any existing object with the same identifier (and
namespace in the case of an element or attribute), and ignore any children of that
object; process any new children in replace mode
- delete
- do not process this object or any existing object with the same identifier (and namespace
in the case of an element or attribute); the element carrying this attribute must
be empty: raise an error if there are any children
- change
- process this object and its children, replacing only those components of an existing
object of the same type with the same identifier (and namespace in case of an element
or attribute) that are explicitly specified. This will change only those existing
attribute values and child elements that appear both in the original specification
and in the new specification. Other children from the original specification will
be preserved.