public void startDocument(
     XMLLocator locator, String encoding, NamespaceContext namespaceContext, Augmentations augs)
     throws XNIException {
   fErrorReporter = (XMLErrorReporter) config.getProperty(ERROR_REPORTER);
   fGenerateSyntheticAnnotation = config.getFeature(GENERATE_SYNTHETIC_ANNOTATION);
   fHasNonSchemaAttributes.clear();
   fSawAnnotation.clear();
   schemaDOM = new SchemaDOM();
   fCurrentAnnotationElement = null;
   fAnnotationDepth = -1;
   fInnerAnnotationDepth = -1;
   fDepth = -1;
   fLocator = locator;
   fNamespaceContext = namespaceContext;
   schemaDOM.setDocumentURI(locator.getExpandedSystemId());
 } // startDocument(XMLLocator,String,NamespaceContext, Augmentations)
 /**
  * Delegates parsing to SchemaParsingConfig
  *
  * @param inputSource
  * @throws IOException
  */
 public void parse(XMLInputSource inputSource) throws IOException {
   config.parse(inputSource);
 }
 /**
  * Delegates to SchemaParsingConfig.setEntityResolver.
  *
  * @param er XMLEntityResolver
  */
 public void setEntityResolver(XMLEntityResolver er) {
   config.setEntityResolver(er);
 }
 /**
  * Delegates to SchemaParsingConfig.getProperty.
  *
  * @param propertyId
  * @return Object
  */
 public Object getProperty(String propertyId) {
   return config.getProperty(propertyId);
 }
 /**
  * Delegates to SchemaParsingConfig.setProperty.
  *
  * @param propertyId
  * @param value
  */
 public void setProperty(String propertyId, Object value) {
   config.setProperty(propertyId, value);
 }
 /**
  * Delegates to SchemaParsingConfig.getFeature
  *
  * @param featureId
  * @return boolean
  */
 public boolean getFeature(String featureId) {
   return config.getFeature(featureId);
 }
 /**
  * Delegates to SchemaParsingConfig.setFeature
  *
  * @param featureId
  * @param state
  */
 public void setFeature(String featureId, boolean state) {
   config.setFeature(featureId, state);
 }