org.apache.xerces.impl

## Class XMLVersionDetector

- java.lang.Object
- - org.apache.xerces.impl.XMLVersionDetector

    public class XMLVersionDetector
    extends java.lang.Object

This class scans the version of the document to determine which scanner to use: XML 1.1 or XML 1.0. The version is scanned using XML 1.1. scanner.

Version:
  $Id: XMLVersionDetector.java 699892 2008-09-28 21:08:27Z mrglavas $
Author:
  Neil Graham, IBM, Elena Litani, IBM

# INTERNAL:

  Usage of this class is not supported. It may be altered or removed at any time.

### Field Summary

Fields
`protected static java.lang.String` `ENTITY_MANAGER` Property identifier: entity manager.
`protected static java.lang.String` `ERROR_REPORTER` Property identifier: error reporter.
`protected java.lang.String` `fEncoding`
`protected XMLEntityManager` `fEntityManager` Entity manager.
`protected XMLErrorReporter` `fErrorReporter` Error reporter.
`protected SymbolTable` `fSymbolTable` Symbol table.
`protected static java.lang.String` `fVersionSymbol` Symbol: "version".
`protected static java.lang.String` `fXMLSymbol`
`protected static java.lang.String` `SYMBOL_TABLE` Property identifier: symbol table.

### Constructor Summary

Constructors
Constructor and Description
`XMLVersionDetector()`

### Method Summary

All Methods Instance Methods Concrete Methods
`short` `determineDocVersion(org.apache.xerces.xni.parser.XMLInputSource inputSource)` This methods scans the XML declaration to find out the version (and provisional encoding) of the document.
`void` `reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)`
`void` `startDocumentParsing(XMLEntityHandler scanner, short version)` Reset the reference to the appropriate scanner given the version of the document and start document scanning.

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

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

### Field Detail

#### SYMBOL_TABLE

    protected static final java.lang.String SYMBOL_TABLE

Property identifier: symbol table.

See Also:
  Constant Field Values

#### ERROR_REPORTER

    protected static final java.lang.String ERROR_REPORTER

Property identifier: error reporter.

See Also:
  Constant Field Values

#### ENTITY_MANAGER

    protected static final java.lang.String ENTITY_MANAGER

Property identifier: entity manager.

See Also:
  Constant Field Values

#### fVersionSymbol

    protected static final java.lang.String fVersionSymbol

Symbol: "version".

#### fXMLSymbol

    protected static final java.lang.String fXMLSymbol

#### fSymbolTable

    protected SymbolTable fSymbolTable

Symbol table.

#### fErrorReporter

    protected XMLErrorReporter fErrorReporter

Error reporter.

#### fEntityManager

    protected XMLEntityManager fEntityManager

Entity manager.

#### fEncoding

    protected java.lang.String fEncoding

### Constructor Detail

#### XMLVersionDetector

    public XMLVersionDetector()

### Method Detail

#### reset

    public void reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)
               throws org.apache.xerces.xni.parser.XMLConfigurationException

Parameters:
  `componentManager` - The component manager.
Throws:
  `org.apache.xerces.xni.XNIException` - Throws exception if required features and properties cannot be found.
  `org.apache.xerces.xni.parser.XMLConfigurationException`

#### startDocumentParsing

    public void startDocumentParsing(XMLEntityHandler scanner,
                                     short version)

Reset the reference to the appropriate scanner given the version of the document and start document scanning.

Parameters:
  `scanner` - - the scanner to use
  `version` - - the version of the document (XML 1.1 or XML 1.0).

#### determineDocVersion

    public short determineDocVersion(org.apache.xerces.xni.parser.XMLInputSource inputSource)
                              throws java.io.IOException

This methods scans the XML declaration to find out the version (and provisional encoding) of the document. The scanning is doing using XML 1.1 scanner.

Parameters:
  `inputSource` -
Returns:
  short - Constants.XML_VERSION_1_1 if document version 1.1, otherwise Constants.XML_VERSION_1_0
Throws:
  `java.io.IOException`