13.5.4 Content Model Descriptions

Python PEP

13.5.4 Content Model Descriptions

Content modules are described using nested tuples. Each tuple contains four values: the type, the quantifier, the name, and a tuple of children. Children are simply additional content module descriptions.

The values of the first two fields are constants defined in the model object of the xml.parsers.expat module. These constants can be collected in two groups: the model type group and the quantifier group.

The constants in the model type group are:

The element named by the model name was declared to have a content model of ANY.

The named element allows a choice from a number of options; this is used for content models such as (A | B | C).

Elements which are declared to be EMPTY have this model type.

Models which represent a series of models which follow one after the other are indicated with this model type. This is used for models such as (A, B, C).

The constants in the quantifier group are:

No modifier is given, so it can appear exactly once, as for A.

The model is optional: it can appear once or not at all, as for A?.

The model must occur one or more times (like A+).

The model must occur zero or more times, as for A*.

See About this document... for information on suggesting changes.