12. inclusionScheme
Prev | Chapter 7. Configuration elements | Next

## 12. inclusionScheme

    <inclusionScheme
      name = non empty token
    >
      Content: [ class ]?
    </inclusionScheme>

    <class>
      Content: Java class name
    </class>

Register `inclusionScheme` specified by `class` with XXE.

An `inclusionScheme` is associated to a type of document.

To make it simple:

- Each time a document for which an inclusion scheme has been declared is opened, XXE invokes this scheme in order to ``evaluate'' the inclusion directives it contains. Evaluating the inclusion directives means replacing these directives by up-to-date included nodes.

- Each time a document for which an inclusion scheme has been declared is saved, XXE invokes this scheme in order to convert included nodes back to inclusion directives.

`Xi:include` (XInclude) elements are inclusion directives handled by the "`XInclude`" inclusion scheme. DITA elements having a `conref` attribute are inclusion directives handled by the "`Conref`" inclusion scheme.

By default, no inclusion schemes at all, not even XInclude, are associated to a document type.

Several `inclusionScheme`s can be associated to the same document type. In such case, they are invoked in the order of their registration.

Child elements of `inclusionScheme`:

class

  Register `inclusionScheme` implemented in the Java™ language by class `class` (implements interface `com.xmlmind.xml.load.InclusionScheme`).

Attributes of `inclusionScheme`:

name

  This name is useful to remove or replace a previously registered `inclusionScheme`. Anonymous `inclusionScheme`s cannot be removed or replaced.

  When a `inclusionScheme` element is used to remove a registered `inclusionScheme`, a `name` attribute must be specified and there must be no `class` child element.

DITA Example:

      <inclusionScheme name="Conref">
        <class>com.xmlmind.xmleditext.dita.ConrefScheme</class>
      </inclusionScheme>

Prev | Up | Next
11. include | Home | 13. menu