org.apache.xerces.xni

## Interface XMLDTDContentModelHandler

- All Known Subinterfaces:
    XMLDTDContentModelFilter

      public interface XMLDTDContentModelHandler

  The DTD content model handler interface defines callback methods to report information items in DTD content models of an element declaration. Parser components interested in DTD content model information implement this interface and are registered as the DTD content model handler on the DTD content model source.
  Version:
    $Id: XMLDTDContentModelHandler.java 447247 2006-09-18 05:23:52Z mrglavas $
  Author:
    Andy Clark, IBM
  See Also:
    `XMLDTDHandler`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static short` | `OCCURS_ONE_OR_MORE` This occurrence count limits the element, choice, or sequence in a children content model to one or more.
    `static short` | `OCCURS_ZERO_OR_MORE` This occurrence count limits the element, choice, or sequence in a children content model to zero or more.
    `static short` | `OCCURS_ZERO_OR_ONE` This occurrence count limits the element, choice, or sequence in a children content model to zero or one.
    `static short` | `SEPARATOR_CHOICE` A choice separator for children and mixed content models.
    `static short` | `SEPARATOR_SEQUENCE` A sequence separator for children content models.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `any(Augmentations augmentations)` A content model of ANY.
    `void` | `element(java.lang.String elementName, Augmentations augmentations)` A referenced element in a mixed or children content model.
    `void` | `empty(Augmentations augmentations)` A content model of EMPTY.
    `void` | `endContentModel(Augmentations augmentations)` The end of a content model.
    `void` | `endGroup(Augmentations augmentations)` The end of a group for mixed or children content models.
    `XMLDTDContentModelSource` | `getDTDContentModelSource()`
    `void` | `occurrence(short occurrence, Augmentations augmentations)` The occurrence count for a child in a children content model or for the mixed content model group.
    `void` | `pcdata(Augmentations augmentations)` The appearance of "#PCDATA" within a group signifying a mixed content model.
    `void` | `separator(short separator, Augmentations augmentations)` The separator between choices or sequences of a mixed or children content model.
    `void` | `setDTDContentModelSource(XMLDTDContentModelSource source)`
    `void` | `startContentModel(java.lang.String elementName, Augmentations augmentations)` The start of a content model.
    `void` | `startGroup(Augmentations augmentations)` A start of either a mixed or children content model.

- - ### Field Detail

    - #### SEPARATOR_CHOICE

          static final short SEPARATOR_CHOICE

      A choice separator for children and mixed content models. This separator is used to specify that the allowed child is one of a collection.

      For example:

           <!ELEMENT elem (foo|bar)>
           <!ELEMENT elem (foo|bar+)>
           <!ELEMENT elem (foo|bar|baz)>
           <!ELEMENT elem (#PCDATA|foo|bar)*>

      See Also:
        `SEPARATOR_SEQUENCE`, Constant Field Values

    - #### SEPARATOR_SEQUENCE

          static final short SEPARATOR_SEQUENCE

      A sequence separator for children content models. This separator is used to specify that the allowed children must follow in the specified sequence.

           <!ELEMENT elem (foo,bar)>
           <!ELEMENT elem (foo,bar*)>
           <!ELEMENT elem (foo,bar,baz)>

      See Also:
        `SEPARATOR_CHOICE`, Constant Field Values

    - #### OCCURS_ZERO_OR_ONE

          static final short OCCURS_ZERO_OR_ONE

      This occurrence count limits the element, choice, or sequence in a children content model to zero or one. In other words, the child is optional.

      For example:

           <!ELEMENT elem (foo?)>

      See Also:
        `OCCURS_ZERO_OR_MORE`, `OCCURS_ONE_OR_MORE`, Constant Field Values

    - #### OCCURS_ZERO_OR_MORE

          static final short OCCURS_ZERO_OR_MORE

      This occurrence count limits the element, choice, or sequence in a children content model to zero or more. In other words, the child may appear an arbitrary number of times, or not at all. This occurrence count is also used for mixed content models.

      For example:

           <!ELEMENT elem (foo*)>
           <!ELEMENT elem (#PCDATA|foo|bar)*>

      See Also:
        `OCCURS_ZERO_OR_ONE`, `OCCURS_ONE_OR_MORE`, Constant Field Values

    - #### OCCURS_ONE_OR_MORE

          static final short OCCURS_ONE_OR_MORE

      This occurrence count limits the element, choice, or sequence in a children content model to one or more. In other words, the child may appear an arbitrary number of times, but must appear at least once.

      For example:

           <!ELEMENT elem (foo+)>

      See Also:
        `OCCURS_ZERO_OR_ONE`, `OCCURS_ZERO_OR_MORE`, Constant Field Values

  - ### Method Detail

    - #### startContentModel

          void startContentModel(java.lang.String elementName,
                               Augmentations augmentations)
                                 throws XNIException

      The start of a content model. Depending on the type of the content model, specific methods may be called between the call to the startContentModel method and the call to the endContentModel method.
      Parameters:
        `elementName` - The name of the element.
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.

    - #### any

          void any(Augmentations augmentations)
                   throws XNIException

      A content model of ANY.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `empty(org.apache.xerces.xni.Augmentations)`, `startGroup(org.apache.xerces.xni.Augmentations)`

    - #### empty

          void empty(Augmentations augmentations)
                     throws XNIException

      A content model of EMPTY.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `any(org.apache.xerces.xni.Augmentations)`, `startGroup(org.apache.xerces.xni.Augmentations)`

    - #### startGroup

          void startGroup(Augmentations augmentations)
                          throws XNIException

      A start of either a mixed or children content model. A mixed content model will immediately be followed by a call to the `pcdata()` method. A children content model will contain additional groups and/or elements.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `any(org.apache.xerces.xni.Augmentations)`, `empty(org.apache.xerces.xni.Augmentations)`

    - #### pcdata

          void pcdata(Augmentations augmentations)
                      throws XNIException

      The appearance of "#PCDATA" within a group signifying a mixed content model. This method will be the first called following the content model's `startGroup()`.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `startGroup(org.apache.xerces.xni.Augmentations)`

    - #### element

          void element(java.lang.String elementName,
                     Augmentations augmentations)
                       throws XNIException

      A referenced element in a mixed or children content model.
      Parameters:
        `elementName` - The name of the referenced element.
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.

    - #### separator

          void separator(short separator,
                       Augmentations augmentations)
                         throws XNIException

      The separator between choices or sequences of a mixed or children content model.
      Parameters:
        `separator` - The type of children separator.
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `SEPARATOR_CHOICE`, `SEPARATOR_SEQUENCE`

    - #### occurrence

          void occurrence(short occurrence,
                        Augmentations augmentations)
                          throws XNIException

      The occurrence count for a child in a children content model or for the mixed content model group.
      Parameters:
        `occurrence` - The occurrence count for the last element or group.
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.
      See Also:
        `OCCURS_ZERO_OR_ONE`, `OCCURS_ZERO_OR_MORE`, `OCCURS_ONE_OR_MORE`

    - #### endGroup

          void endGroup(Augmentations augmentations)
                        throws XNIException

      The end of a group for mixed or children content models.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.

    - #### endContentModel

          void endContentModel(Augmentations augmentations)
                               throws XNIException

      The end of a content model.
      Parameters:
        `augmentations` - Additional information that may include infoset augmentations.
      Throws:
        `XNIException` - Thrown by handler to signal an error.

    - #### setDTDContentModelSource

          void setDTDContentModelSource(XMLDTDContentModelSource source)

    - #### getDTDContentModelSource

          XMLDTDContentModelSource getDTDContentModelSource()

Copyright © 1999-2022 The Apache Software Foundation. All Rights Reserved.