Class RELAXNSReader

All Implemented Interfaces:
IDContextProvider2, org.relaxng.datatype.ValidationContext, ContentHandler, DTDHandler, EntityResolver, ErrorHandler, XMLFilter, XMLReader

public class RELAXNSReader extends RELAXReader
parses RELAX Namespace XML and constructs a SchemaProvider.
  • Field Details

    • RELAXNamespaceNamespace

      public static final String RELAXNamespaceNamespace
      namespace URI of RELAX Namespace.
      See Also:
    • grammar

      public final RELAXGrammar grammar
      RELAX grammar that is currentlt being loaded
    • schemaProvider

      protected org.iso_relax.dispatcher.SchemaProvider schemaProvider
    • WRN_ILLEGAL_RELAXNAMESPACE_VERSION

      public static final String WRN_ILLEGAL_RELAXNAMESPACE_VERSION
      See Also:
    • ERR_TOPLEVEL_PARTICLE_MUST_BE_RELAX_CORE

      public static final String ERR_TOPLEVEL_PARTICLE_MUST_BE_RELAX_CORE
      See Also:
    • ERR_INLINEMODULE_NOT_FOUND

      public static final String ERR_INLINEMODULE_NOT_FOUND
      See Also:
    • ERR_UNKNOWN_LANGUAGE

      public static final String ERR_UNKNOWN_LANGUAGE
      See Also:
    • ERR_NAMESPACE_COLLISION

      public static final String ERR_NAMESPACE_COLLISION
      See Also:
  • Constructor Details

  • Method Details

    • parse

      public static RELAXGrammar parse(String moduleURL, SAXParserFactory factory, GrammarReaderController controller, ExpressionPool pool)
      loads RELAX grammar
    • parse

      public static RELAXGrammar parse(InputSource module, SAXParserFactory factory, GrammarReaderController controller, ExpressionPool pool)
      loads RELAX grammar
    • getResult

      public final RELAXGrammar getResult()
      obtains parsed grammar object only if parsing was successful.
    • getResultAsGrammar

      public Grammar getResultAsGrammar()
      Description copied from class: GrammarReader
      gets the parsed AGM. Should any error happens, this method should returns null. derived classes should implement type-safe getGrammar method, along with this method.
      Specified by:
      getResultAsGrammar in class GrammarReader
    • getSchemaProvider

      public final org.iso_relax.dispatcher.SchemaProvider getSchemaProvider()
      obtains parsed grammar object as SchemaProvider only if parsing was successful.
    • getIslandSchemaReader

      public org.iso_relax.dispatcher.IslandSchemaReader getIslandSchemaReader(String language, String expectedTargetNamespace)
      creates an IslandSchemaReader that can parse the specified language. This method can be overrided by the derived class to incorporate other language implementations.
      Returns:
      return null if the given language is unrecognized. error will be handled by the caller. So this method should not attempt to report nor recover from error.
    • resolveDataType

      public org.relaxng.datatype.Datatype resolveDataType(String typeName)
    • isGrammarElement

      protected boolean isGrammarElement(StartTagInfo tag)
      Description copied from class: GrammarReader
      checks if given element is that of the grammar elements.
      Specified by:
      isGrammarElement in class GrammarReader
    • resolveElementRef

      protected Expression resolveElementRef(String namespace, String label)
      Description copied from class: RELAXReader
      obtains an Expression specified by given (namespace,label) pair. this method is called to parse <ref label="..." /> element.
      Specified by:
      resolveElementRef in class RELAXReader
    • resolveHedgeRef

      protected Expression resolveHedgeRef(String namespace, String label)
      Description copied from class: RELAXReader
      obtains an Expression specified by given (namespace,label) pair. this method is called to parse <hedgeRef label="..." /> element.
      Specified by:
      resolveHedgeRef in class RELAXReader
    • resolveRef

      private Expression resolveRef(String namespace, String label, String tagName)
    • localizeMessage

      protected String localizeMessage(String propertyName, Object[] args)
      Description copied from class: GrammarReader
      formats localized message with arguments
      Overrides:
      localizeMessage in class RELAXReader