6 model groups and references – Doremi DSV-J2 User Manual

Page 66

Advertising
background image

15.6 Model groups and references

An element group is a named container with one or several elements. The group of elements
can be reused at multiple places in the schema. Model groups are invisible in the instance
document (in contrast to types, which require). Model groups have been used sparingly since
they do not map to a feature in object-oriented programming languages (unless they support
multiple inheritance).

Import note on reading the diagrams for model groups: If the model group symbol is drawn with
simple lines (i.e. not dashed), this does not imply that the elements in the model group are
required. The optionality of the group depends on the optionality of elements contained in the
model group. (Model groups can be made optional, e.g. to make a model group with required
elements optional in some cases, but this has not been used.)

The any group is a special kind of model group. It is a placeholder for elements not defined in
the schema. The "any" element defines points where the schema can be extended. After the
"Any" keyword, the namespace from which the elements may come is defined. For example,
"##other" specifies that the extension elements may come from any namespace, except from
the current schema namespace.

Element references are indicated through a link arrow in the lower left corner. They are similar
to references to model groups within a schema, but instead of refining the model group, they
directly refer to a single global element. The global element can then be reused in multiple
places.

DSV.OM.000391.DRM

Page 66 of 68

Version 1.3

Doremi Labs

Advertising