Package com.saxonica.ee.validate

## Class SkipValidator

- java.lang.Object
- - net.sf.saxon.event.SequenceReceiver
  - - net.sf.saxon.event.ProxyReceiver
    - - com.saxonica.ee.validate.ValidatingFilter
      - - com.saxonica.ee.validate.ContentValidator
        - - com.saxonica.ee.validate.SkipValidator

- All Implemented Interfaces:
    `javax.xml.transform.Result`, `Receiver`

      public class SkipValidator
      extends ContentValidator

  This class is a filter that passes all Receiver events through unchanged, except that it removes all type annotations from element and attribute nodes. It implements validation="strip" or in schema terms, skip validation

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.saxonica.ee.validate.ContentValidator

      `ContentValidator.Nillability`

  - ### Field Summary

    - ### Fields inherited from class com.saxonica.ee.validate.ContentValidator

      `childValidator, nilled, pendingMessages`

    - ### Fields inherited from class net.sf.saxon.event.ProxyReceiver

      `nextReceiver`

    - ### Fields inherited from class net.sf.saxon.event.SequenceReceiver

      `pipelineConfiguration, previousAtomic, systemId`

    - ### Fields inherited from interface javax.xml.transform.Result

      `PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SkipValidator​(Receiver next)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `append​(Item item, Location locationId, int copyNamespaces)` | Append an arbitrary item (node or atomic value) to the output
    `protected ContentValidator` | `getChildValidator()` | Get a validator to handle the children of the current element.
    `protected ConstraintChecker` | `getConstraintChecker()` | Get the constraint checker used in this pipeline
    `SchemaType` | `getSchemaType()` | Get the schema type against which we are validating, if any
    `void` | `setPipelineConfiguration​(PipelineConfiguration pipe)` | Set the pipeline configuration
    `void` | `startElement​(NodeName elemName, SchemaType type, AttributeMap attributes, NamespaceMap namespaces, Location location, int properties)` | Output element start tag

    - ### Methods inherited from class com.saxonica.ee.validate.ContentValidator

      `checkNoCharactersWhenNil, checkNoChildrenWhenNil, endDocument, getAnnotation, getContainingElement, getContainingElementLocationId, getContainingElementName, getElementDeclaration, getNamespaceResolver, getNillability, isNilled, makeChildValidator, makeValidator, makeValidatorForType, setAnnotation, setContainingElement, setElementDeclaration, setNillability, setNilled, validateAttributes`

    - ### Methods inherited from class com.saxonica.ee.validate.ValidatingFilter

      `getAttributeInheritor, getValidationContext, reportIfInvalid, reportValidationError, setConstraintChecker, setStartTagBuffer, setValidationContext, usesTypeAnnotations`

    - ### Methods inherited from class net.sf.saxon.event.ProxyReceiver

      `characters, close, comment, endElement, getNamePool, getNextReceiver, open, processingInstruction, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startDocument`

    - ### Methods inherited from class net.sf.saxon.event.SequenceReceiver

      `append, decompose, flatten, getConfiguration, getErrorCodeForDecomposingFunctionItems, getPipelineConfiguration, getSystemId, handlesAppend`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SkipValidator

          public SkipValidator​(Receiver next)

  - ### Method Detail

    - #### setPipelineConfiguration

          public void setPipelineConfiguration​(PipelineConfiguration pipe)

      Description copied from interface: `Receiver`
      Set the pipeline configuration
      Specified by:
        `setPipelineConfiguration` in interface `Receiver`
      Overrides:
        `setPipelineConfiguration` in class `ProxyReceiver`
      Parameters:
        `pipe` - the pipeline configuration

    - #### getSchemaType

          public SchemaType getSchemaType()

      Get the schema type against which we are validating, if any
      Specified by:
        `getSchemaType` in class `ContentValidator`
      Returns:
        the schema type that this validator is validating against, or null

    - #### getConstraintChecker

          protected ConstraintChecker getConstraintChecker()

      Description copied from class: `ValidatingFilter`
      Get the constraint checker used in this pipeline
      Overrides:
        `getConstraintChecker` in class `ValidatingFilter`
      Returns:
        the constraint checker

    - #### startElement

          public void startElement​(NodeName elemName,
                                   SchemaType type,
                                   AttributeMap attributes,
                                   NamespaceMap namespaces,
                                   Location location,
                                   int properties)
                            throws XPathException

      Output element start tag
      Specified by:
        `startElement` in interface `Receiver`
      Overrides:
        `startElement` in class `ContentValidator`
      Parameters:
        `elemName` - the name of the element.
        `type` - the type annotation of the element.
        `attributes` - the attributes of this element
        `namespaces` - the in-scope namespaces of this element: generally this is all the in-scope namespaces, without relying on inheriting namespaces from parent elements
        `location` - an object providing information about the module, line, and column where the node originated
        `properties` - bit-significant properties of the element node. If there are no relevant properties, zero is supplied. The definitions of the bits are in class `ReceiverOption`
      Throws:
        `XPathException` - if an error occurs

    - #### getChildValidator

          protected ContentValidator getChildValidator()

      Get a validator to handle the children of the current element. This is called immediately on return from the startElement call that starts this element.
      Specified by:
        `getChildValidator` in class `ContentValidator`
      Returns:
        the validator to be used to handle the children

    - #### append

          public void append​(Item item,
                             Location locationId,
                             int copyNamespaces)
                      throws XPathException

      Description copied from class: `ProxyReceiver`
      Append an arbitrary item (node or atomic value) to the output
      Specified by:
        `append` in interface `Receiver`
      Overrides:
        `append` in class `ValidatingFilter`
      Parameters:
        `item` - the item to be appended
        `locationId` - the location of the calling instruction, for diagnostics
        `copyNamespaces` - if the item is an element node, this indicates whether its namespaces need to be copied. Values are `ReceiverOption.ALL_NAMESPACES`; the default (0) means
      Throws:
        `XPathException` - if an error occurs