You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by an...@locus.apache.org on 2000/06/08 00:03:49 UTC

cvs commit: xml-xerces/java/docs design.dtd design.xml design.xsl

andyc       00/06/07 15:03:48

  Modified:    java/docs design.dtd design.xml design.xsl
  Log:
  Updated design for Xerces-J 2.0. Use the 'design.xsl' stylesheet to
  transform the 'design.xml' document into HTML.
  
  Revision  Changes    Path
  1.3       +3 -1      xml-xerces/java/docs/design.dtd
  
  Index: design.dtd
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/docs/design.dtd,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- design.dtd	2000/05/20 01:06:28	1.2
  +++ design.dtd	2000/06/07 22:03:39	1.3
  @@ -17,12 +17,14 @@
   <!ELEMENT array (note*,(primitive|reference))>
   <!ATTLIST array dimension CDATA '1'>
   <!ELEMENT primitive EMPTY>
  -<!ATTLIST primitive type (long|int|short|char|boolean) #REQUIRED>
  +<!ATTLIST primitive type (long|int|short|byte|char|boolean) #REQUIRED>
   <!ELEMENT reference EMPTY>
   <!ATTLIST reference idref IDREF #REQUIRED>
   <!ELEMENT collection (note*,collector,items)>
   <!ELEMENT collector (%types;)>
   <!ELEMENT items (%types;)>
  +<!ELEMENT union (note?,part,part+)>
  +<!ELEMENT part (note?,(%types;)*)>
   
   <!-- sections -->
   <!ENTITY % visibility 'public|private|protected'>
  
  
  
  1.3       +1107 -516 xml-xerces/java/docs/design.xml
  
  Index: design.xml
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/docs/design.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- design.xml	2000/05/20 01:06:29	1.2
  +++ design.xml	2000/06/07 22:03:40	1.3
  @@ -10,8 +10,9 @@
      <class id='java-exception' name='Exception'/>
      <class id='java-object' name='Object'/>
      <class id='java-string' name='String'/>
  +   <interface id='java-cloneable' name='Cloneable'/>
     </category>
  -  <category name='Java I/O'>
  +  <category name='Java I/O' package='java.io'>
      <class id='java-io-exception' name='IOException'/>
     </category>
     <category name='Java Utils' package='java.util'>
  @@ -27,23 +28,218 @@
     </category>
     <category name='Simple API for XML' package='org.xml.sax'>
      <class id='sax-exception' name='SAXException'/>
  +   <class id='sax-input-source' name='InputSource'/>
      <class id='sax-not-recognized-exception' name='SAXNotRecognizedException'/>
      <class id='sax-not-supported-exception' name='SAXNotSupportedException'/>
      <class id='sax-parse-exception' name='SAXParseException'/>
      <interface id='sax-attribute-list' name='AttributeList'/>
      <interface id='sax-attributes' name='Attributes'/>
  +   <interface id='sax-content-handler' name='ContentHandler'/>
  +   <interface id='sax-document-handler' name='DocumentHandler'/>
  +   <interface id='sax-dtd-handler' name='DTDHandler'/>
      <interface id='sax-entity-resolver' name='EntityResolver'/>
      <interface id='sax-error-handler' name='ErrorHandler'/>
  -   <interface id='sax-input-source' name='InputSource'/>
  -   <interface id='sax-locator' name='Locator'/>
  -   <interface id='sax-parser' name='Parser'/>
  -   <interface id='sax-xmlreader' name='XMLReader'/>
  +   <interface id='sax-locator' name='Locator'>
  +    <method name='getPublicId'>
  +     <returns>
  +      <reference idref='java-string'/>
  +     </returns>
  +    </method>
  +    <method name='getSystemId'>
  +     <returns>
  +      <reference idref='java-string'/>
  +     </returns>
  +    </method>
  +    <method name='getLineNumber'>
  +     <returns>
  +      <primitive type='int'/>
  +     </returns>
  +    </method>
  +    <method name='getColumnNumber'>
  +     <returns>
  +      <primitive type='int'/>
  +     </returns>
  +    </method>
  +   </interface>
  +   <interface id='sax-parser' name='Parser'>
  +    <method name='parse'>
  +     <param name='systemId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <throws>
  +      <reference idref='java-io-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-exception'/>
  +     </throws>
  +    </method>
  +    <method name='parse'>
  +     <param name='inputSource'>
  +      <reference idref='sax-input-source'/>
  +     </param>
  +     <throws>
  +      <reference idref='java-io-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-exception'/>
  +     </throws>
  +    </method>
  +    <method name='setLocale'>
  +     <param name='locale'>
  +      <reference idref='java-locale'/>
  +     </param>
  +     <throws>
  +      <reference idref='sax-exception'/>
  +     </throws>
  +    </method>
  +    <method name='setEntityResolver'>
  +     <param name='entityResolver'>
  +      <reference idref='sax-entity-resolver'/>
  +     </param>
  +    </method>
  +    <method name='setDocumentHandler'>
  +     <param name='documentHandler'>
  +      <reference idref='sax-document-handler'/>
  +     </param>
  +    </method>
  +    <method name='setDTDHandler'>
  +     <param name='dtdHandler'>
  +      <reference idref='sax-dtd-handler'/>
  +     </param>
  +    </method>
  +    <method name='setErrorHandler'>
  +     <param name='errorHandler'>
  +      <reference idref='sax-error-handler'/>
  +     </param>
  +    </method>
  +   </interface>
  +   <interface id='sax-xmlreader' name='XMLReader'>
  +    <method name='parse'>
  +     <param name='systemId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <throws>
  +      <reference idref='java-io-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-exception'/>
  +     </throws>
  +    </method>
  +    <method name='parse'>
  +     <param name='inputSource'>
  +      <reference idref='sax-input-source'/>
  +     </param>
  +     <throws>
  +      <reference idref='java-io-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-exception'/>
  +     </throws>
  +    </method>
  +    <method name='setEntityResolver'>
  +     <param name='entityResolver'>
  +      <reference idref='sax-entity-resolver'/>
  +     </param>
  +    </method>
  +    <method name='getEntityResolver'>
  +     <returns>
  +      <reference idref='sax-entity-resolver'/>
  +     </returns>
  +    </method>
  +    <method name='setContentHandler'>
  +     <param name='contentHandler'>
  +      <reference idref='sax-content-handler'/>
  +     </param>
  +    </method>
  +    <method name='getContentHandler'>
  +     <returns>
  +      <reference idref='sax-content-handler'/>
  +     </returns>
  +    </method>
  +    <method name='setDTDHandler'>
  +     <param name='dtdHandler'>
  +      <reference idref='sax-dtd-handler'/>
  +     </param>
  +    </method>
  +    <method name='getDTDHandler'>
  +     <returns>
  +      <reference idref='sax-dtd-handler'/>
  +     </returns>
  +    </method>
  +    <method name='setErrorHandler'>
  +     <param name='errorHandler'>
  +      <reference idref='sax-error-handler'/>
  +     </param>
  +    </method>
  +    <method name='getErrorHandler'>
  +     <returns>
  +      <reference idref='sax-error-handler'/>
  +     </returns>
  +    </method>
  +    <method name='setFeature'>
  +     <param name='featureId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <param name='state'>
  +      <primitive type='int'/>
  +     </param>
  +     <throws>
  +      <reference idref='sax-not-recognized-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-not-supported-exception'/>
  +     </throws>
  +    </method>
  +    <method name='getFeature'>
  +     <param name='featureId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <returns>
  +      <primitive type='int'/>
  +     </returns>
  +     <throws>
  +      <reference idref='sax-not-recognized-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-not-supported-exception'/>
  +     </throws>
  +    </method>
  +    <method name='setProperty'>
  +     <param name='propertyId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <param name='value'>
  +      <reference idref='java-object'/>
  +     </param>
  +     <throws>
  +      <reference idref='sax-not-recognized-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-not-supported-exception'/>
  +     </throws>
  +    </method>
  +    <method name='getProperty'>
  +     <param name='propertyId'>
  +      <reference idref='java-string'/>
  +     </param>
  +     <returns>
  +      <reference idref='java-object'/>
  +     </returns>
  +     <throws>
  +      <reference idref='sax-not-recognized-exception'/>
  +     </throws>
  +     <throws>
  +      <reference idref='sax-not-supported-exception'/>
  +     </throws>
  +    </method>
  +   </interface>
     </category>
    </types>
   
    <!-- Category: BASE -->
    <category name='Base' package='&package;.framework'>
   
  +  <!--
     <class id='exception' name='XMLException'>
      <extends>
       <reference idref='java-exception'/>
  @@ -73,6 +269,7 @@
       </returns>
      </method>
     </class>
  +  -->
   
     <interface id='configurable' name='XMLConfigurable'>
      <method name='reset'>
  @@ -80,7 +277,7 @@
        <reference idref='configuration-manager'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='setFeature'>
  @@ -91,7 +288,10 @@
        <primitive type='boolean'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-not-recognized-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-not-supported-exception'/>
       </throws>
      </method>
      <method name='setProperty'>
  @@ -102,7 +302,10 @@
        <reference idref='java-object'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-not-recognized-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-not-supported-exception'/>
       </throws>
      </method>
     </interface>
  @@ -115,8 +318,11 @@
       <returns>
        <primitive type='boolean'/>
       </returns>
  +    <throws>
  +     <reference idref='sax-not-recognized-exception'/>
  +    </throws>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-not-supported-exception'/>
       </throws>
      </method>
      <method name='getProperty'>
  @@ -127,17 +333,132 @@
        <reference idref='java-object'/>
       </returns>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-not-recognized-exception'/>
       </throws>
  +    <throws>
  +     <reference idref='sax-not-supported-exception'/>
  +    </throws>
      </method>
     </interface>
   
  +  <class id='string' name='XMLString'>
  +   <field name='ch' visibility='public'>
  +    <array>
  +     <primitive type='char'/>
  +    </array>
  +   </field>
  +   <field name='offset' visibility='public'>
  +    <primitive type='int'/>
  +   </field>
  +   <field name='length' visibility='public'>
  +    <primitive type='int'/>
  +   </field>
  +   <constructor/>
  +   <constructor>
  +    <param name='ch'>
  +     <array>
  +      <primitive type='char'/>
  +     </array>
  +    </param>
  +    <param name='offset'>
  +     <primitive type='int'/>
  +    </param>
  +    <param name='length'>
  +     <primitive type='int'/>
  +    </param>
  +   </constructor>
  +   <method name='setValues'>
  +    <param name='ch'>
  +     <array>
  +      <primitive type='char'/>
  +     </array>
  +    </param>
  +    <param name='offset'>
  +     <primitive type='int'/>
  +    </param>
  +    <param name='length'>
  +     <primitive type='int'/>
  +    </param>
  +   </method>
  +   <method name='clear'/>
  +   <method name='equals'>
  +    <param name='ch'>
  +     <array>
  +      <primitive type='char'/>
  +     </array>
  +    </param>
  +    <param name='offset'>
  +     <primitive type='int'/>
  +    </param>
  +    <param name='length'>
  +     <primitive type='int'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='equals'>
  +    <param name='s'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='toString'>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
  +  </class>
  +  
  +  <class id='string-buffer' name='XMLStringBuffer'>
  +   <extends>
  +    <reference idref='string'/>
  +   </extends>
  +   <constant name='SIZE'>
  +    <primitive type='int'/>
  +   </constant>
  +   <constructor/>
  +   <constructor>
  +    <param name='size'>
  +     <primitive type='int'/>
  +    </param>
  +   </constructor>
  +   <method name='append'>
  +    <param name='c'>
  +     <primitive type='char'/>
  +    </param>
  +   </method>
  +   <method name='append'>
  +    <param name='s'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </method>
  +   <method name='append'>
  +    <param name='ch'>
  +     <array>
  +      <primitive type='char'/>
  +     </array>
  +    </param>
  +    <param name='offset'>
  +     <primitive type='int'/>
  +    </param>
  +    <param name='length'>
  +     <primitive type='int'/>
  +    </param>
  +   </method>
  +  </class>
  +
    </category>
   
    <!-- Category: ERROR HANDLING -->
    <category name='Error Handling' package='&package;.framework'>
   
     <class id='error-reporter' name='XMLErrorReporter'>
  +   <implements>
  +    <reference idref='configurable'/>
  +   </implements>
      <constant name='SEVERITY_WARNING'>
       <primitive type='short'/>
      </constant>
  @@ -147,10 +468,10 @@
      <constant name='SEVERITY_FATAL_ERROR'>
       <primitive type='short'/>
      </constant>
  -   <field name='locale'>
  +   <field name='fLocale'>
       <reference idref='java-locale'/>
      </field>
  -   <field name='messageProviders'>
  +   <field name='fMessageFormatters'>
       <collection>
        <collector>
         <reference idref='java-hashtable'/>
  @@ -160,9 +481,13 @@
        </items>
       </collection>
      </field>
  -   <field name='errorHandler'>
  +   <field name='fErrorHandler'>
       <reference idref='sax-error-handler'/>
      </field>
  +   <field name='fContinueAfterFatalError'>
  +    <note>This field is initialized on reset.</note>
  +    <primitive type='boolean'/>
  +   </field>
      <constructor/>
      <method name='setLocale'>
       <param name='locale'>
  @@ -214,7 +539,7 @@
        <primitive type='short'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
     </class>
  @@ -231,27 +556,27 @@
      <implements>
       <reference idref='entity-reader-change-listener'/>
      </implements>
  -   <field name='stringPool'>
  +   <field name='fSymbolTable'>
       <note>This field is initialized on reset.</note>
  -    <reference idref='string-pool'/>
  -   </field>
  -   <field name='symbolTable'>
  -    <note>This field is initialized on reset.</note>
       <reference idref='symbol-table'/>
      </field>
  -   <field name='errorReporter'>
  +   <field name='fErrorReporter'>
       <note>This field is initialized on reset.</note>
       <reference idref='error-reporter'/>
  +   </field>
  +   <field name='fEntityManager'>
  +    <note>This field is initialized on reset.</note>
  +    <reference idref='entity-manager'/>
      </field>
  -   <field name='dtdScanner'>
  +   <field name='fDTDScanner'>
       <note>This field is initialized on reset.</note>
       <reference idref='dtd-scanner'/>
      </field>
  -   <field name='namespacesEnabled'>
  +   <field name='fNamespaces'>
       <note>This field is initialized on reset.</note>
       <primitive type='boolean'/>
      </field>
  -   <field name='documentHandler'>
  +   <field name='fDocumentHandler'>
       <reference idref='document-handler'/>
      </field>
      <constructor/>
  @@ -261,56 +586,104 @@
       </param>
      </method>
      <method name='scanDocument'>
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +    <throws>
  +     <reference idref='java-io-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='scanDocumentFragment'>
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='java-io-exception'/>
       </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
      </method>
     </class>
   
     <interface id='document-handler' name='XMLDocumentHandler'>
      <method name='startDocument'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  +   <method name='xmlDecl'>
  +    <param name='version'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='encoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='standalone'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
      <method name='doctypeDecl'>
       <param name='rootElement'>
        <reference idref='qname'/>    
       </param>
       <param name='publicId'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='systemId'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='comment'>
       <param name='text'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
  +    <!-- REVISIT: Could this be a way of not buffering stuff?
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    -->
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='processingInstruction'>
       <param name='target'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='data'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  +   <method name='startNamespaceScope'>
  +    <param name='prefix'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='uri'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
      <method name='startElement'>
       <param name='element'>
        <reference idref='qname'/>
  @@ -319,117 +692,100 @@
        <reference idref='attributes'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='characters'>
  -    <param name='ch'>
  -     <array>
  -      <primitive type='char'/>
  -     </array>
  +    <param name='text'>
  +     <reference idref='string'/>
       </param>
  -    <param name='offset'>
  -     <primitive type='int'/>
  +    <param name='whitespace'>
  +     <primitive type='boolean'/>
       </param>
  -    <param name='length'>
  -     <primitive type='int'/>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='ignorableWhitespace'>
  +    <param name='text'>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endElement'>
       <param name='element'>
        <reference idref='qname'/>
       </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='endNamespaceScope'>
  +    <param name='prefix'>
  +     <reference idref='java-string'/>
  +    </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='startEntityReference'>
  -    <param name='entity'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='publicId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='systemId'>
  +     <reference idref='java-string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endEntityReference'>
  -    <param name='entity'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +    <param name='name'>
  +     <reference idref='java-string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='startCDATASection'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endCDATASection'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>   
      <method name='endDocument'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
     </interface>
   
     <class id='attributes' name='XMLAttributes'>
  -   <field name='stringPool'>
  -    <reference idref='string-pool'/>
  -   </field>
  -   <field name='symbolTable'>
  -    <reference idref='symbol-table'/>
  -   </field>
  +   <implements>
  +    <reference idref='sax-attribute-list'/>
  +   </implements>
  +   <implements>
  +    <reference idref='sax-attributes'/>
  +   </implements>
      <constructor/>
  -   <method name='reset'>
  -    <param name='stringPool'>
  -     <reference idref='string-pool'/>
  -    </param>
  -    <param name='symbolTable'>
  -     <reference idref='symbol-table'/>
  -    </param>
  -   </method>
      <method name='addAttribute'>
  -    <param name='localpart'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  -    </param>
  -    <param name='rawname'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  -    </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
  -   </method>
  -   <method name='addAttribute'>
  -    <param name='uri'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  -    </param>
  -    <param name='localpart'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  -    </param>
  -    <param name='rawname'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  +    <param name='name'>
  +     <reference idref='qname'/>
       </param>
       <param name='type'>
  -     <note>The index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='value'>
  -     <note>The index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <returns>
        <primitive type='int'/>
  @@ -440,7 +796,7 @@
        <primitive type='int'/>
       </param>
       <param name='name'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='offset'>
        <primitive type='int'/>
  @@ -455,85 +811,61 @@
        <primitive type='int'/>
       </returns>
      </method>
  -   <method name='setURI'>
  +   <method name='setName'>
       <param name='index'>
        <primitive type='int'/>
  -    </param>
  -    <param name='uri'>
  -     <primitive type='int'/>
       </param>
  -   </method>
  -   <method name='getURI'>
  -    <param name='index'>
  -     <primitive type='int'/>
  +    <param name='name'>
  +     <reference idref='qname'/>
       </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
      </method>
  -   <method name='setLocalpart'>
  +   <method name='getName'>
       <param name='index'>
        <primitive type='int'/>
  -    </param>
  -    <param name='localpart'>
  -     <primitive type='int'/>
       </param>
  -   </method>
  -   <method name='getLocalpart'>
  -    <param name='index'>
  -     <primitive type='int'/>
  +    <param name='name'>
  +     <reference idref='qname'/>
       </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
      </method>
  -   <method name='setRawname'>
  +   <method name='setType'>
       <param name='index'>
        <primitive type='int'/>
       </param>
  -    <param name='rawname'>
  -     <primitive type='int'/>
  +    <param name='type'>
  +     <reference idref='java-string'/>
       </param>
      </method>
  -   <method name='getRawname'>
  +   <method name='getType'>
       <param name='index'>
        <primitive type='int'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </returns>
      </method>
  -   <method name='setType'>
  +   <method name='setValue'>
       <param name='index'>
        <primitive type='int'/>
       </param>
  -    <param name='type'>
  -     <primitive type='int'/>
  -    </param>
  -   </method>
  -   <method name='getType'>
  -    <param name='index'>
  -     <primitive type='int'/>
  +    <param name='value'>
  +     <reference idref='java-string'/>
       </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
      </method>
      <method name='setValue'>
       <param name='index'>
        <primitive type='int'/>
       </param>
       <param name='value'>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
      </method>
      <method name='getValue'>
       <param name='index'>
        <primitive type='int'/>
       </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
  +    <param name='value'>
  +     <reference idref='string'/>
  +    </param>
      </method>
      <method name='getEntityCount'>
       <param name='attrIndex'>
  @@ -565,16 +897,6 @@
        <primitive type='int'/>
       </returns>
      </method>
  -   <method name='getAttributeList'>
  -    <returns>
  -     <reference idref='sax-attribute-list'/>
  -    </returns>
  -   </method>
  -   <method name='getAttributes'>
  -    <returns>
  -     <reference idref='sax-attributes'/>
  -    </returns>
  -   </method>
     </class>
   
     <class id='dtd-scanner' name='XMLDTDScanner'>
  @@ -584,30 +906,30 @@
      <implements>
       <reference idref='entity-reader-change-listener'/>
      </implements>
  -   <field name='stringPool'>
  +   <field name='fSymbolTable'>
       <note>This field is initialized on reset.</note>
  -    <reference idref='string-pool'/>
  -   </field>
  -   <field name='symbolTable'>
  -    <note>This field is initialized on reset.</note>
       <reference idref='symbol-table'/>
      </field>
  -   <field name='errorReporter'>
  +   <field name='fErrorReporter'>
       <note>This field is initialized on reset.</note>
       <reference idref='error-reporter'/>
  +   </field>
  +   <field name='fEntityManager'>
  +    <note>This field is initialized on reset.</note>
  +    <reference idref='entity-manager'/>
      </field>
  -   <field name='grammarPool'>
  +   <field name='fGrammarPool'>
       <note>This field is initialized on reset.</note>
       <reference idref='grammar-pool'/>
      </field>
  -   <field name='namespacesEnabled'>
  +   <field name='fNamespaces'>
       <note>This field is initialized on reset.</note>
       <primitive type='boolean'/>
      </field>
  -   <field name='dtdHandler'>
  +   <field name='fDTDHandler'>
       <reference idref='dtd-handler'/>
      </field>
  -   <field name='dtdContentModelHandler'>
  +   <field name='fDTDContentModelHandler'>
       <reference idref='dtd-content-model-handler'/>
      </field>
      <constructor/>
  @@ -622,10 +944,47 @@
       </param>
      </method>
      <method name='scanDTD'>
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +    <throws>
  +     <reference idref='java-io-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='scanDTDFragment'>
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='java-io-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  +   <method name='scanDTDInternalSubset'>
  +    <param name='complete'>
  +     <primitive type='boolean'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +    <throws>
  +     <reference idref='java-io-exception'/>
  +    </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
     </class>
   
     <interface id='dtd-handler' name='XMLDTDHandler'>
  @@ -637,39 +996,36 @@
      </constant>
      <method name='startDTD'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='comment'>
       <param name='text'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='processingInstruction'>
       <param name='target'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='data'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='startExternalSubset'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endExternalSubset'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='elementDecl'>
  @@ -677,13 +1033,20 @@
        <reference idref='qname'/>
       </param>
       <param name='contentModel'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  +   <method name='startAttlist'>
  +    <param name='element'>
  +     <reference idref='qname'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
      <method name='attributeDecl'>
       <param name='element'>
        <reference idref='qname'/>
  @@ -693,74 +1056,109 @@
       </param>
       <param name='type'>
        <primitive type='short'/>
  +    </param>
  +    <param name='enumeration'>
  +     <array>
  +      <reference idref='java-string'/>
  +     </array>
       </param>
  -    <!-- REVISIT: enumeration -->
       <param name='defaultType'>
        <primitive type='short'/>
       </param>
       <param name='defaultValue'>
  -     <primitive type='int'/>
  -    </param>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='startAttlist'>
  -    <param name='element'>
  -     <reference idref='qname'/>
  +     <reference idref='string'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endAttlist'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  -   <method name='entityDecl'>
  -    <param name='entity'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +   <method name='internalEntityDecl'>
  +    <param name='name'>
  +     <reference idref='java-string'/>
       </param>
       <param name='text'>
  -     <note>Index into the string pool.</note>
  -     <primitive type='int'/>
  +     <reference idref='string'/>
       </param>
       <param name='isPE'>
        <primitive type='boolean'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  -   <method name='entityDecl'>
  -    <param name='entity'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +   <method name='externalEntityDecl'>
  +    <param name='name'>
  +     <reference idref='java-string'/>
       </param>
       <param name='publicId'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='systemId'>
  -     <note>Index into the symbol table.</note>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='isPE'>
        <primitive type='boolean'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
  -   <!-- TODO: Notation entity decl -->
  +   <method name='unparsedEntityDecl'>
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='publicId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='systemId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='notation'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
      <method name='notationDecl'>
  -    <!-- TODO
  -    <param name='...'/>
  -    -->
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='publicId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='systemId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='startParameterEntityReference'>
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='publicId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='systemId'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
  +   </method>
  +   <method name='endParameterEntityReference'>
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='startConditionalSection'>
  @@ -768,22 +1166,34 @@
        <primitive type='short'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endConditionalSection'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endDTD'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
     </interface>
   
     <interface id='dtd-content-model-handler' name='XMLDTDContentModelHandler'>
  +   <constant name='TYPE_EMPTY'>
  +    <primitive type='short'/>
  +   </constant>
  +   <constant name='TYPE_ANY'>
  +    <primitive type='short'/>
  +   </constant>
  +   <constant name='TYPE_MIXED'>
  +    <primitive type='short'/>
  +   </constant>
  +   <constant name='TYPE_CHILDREN'>
  +    <primitive type='short'/>
  +   </constant>
      <constant name='SEPARATOR_CHOICE'>
       <primitive type='short'/>
      </constant>
  @@ -803,46 +1213,24 @@
       <param name='element'>
        <reference idref='qname'/>
       </param>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='emptyContent'>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='anyContent'>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='startMixedContent'>
  +    <param name='type'>
  +     <primitive type='short'/>
  +    </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='mixedElement'>
       <param name='element'>
        <reference idref='qname'/>
       </param>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='endMixedContent'>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='startChildrenContent'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='childrenStartGroup'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='childrenElement'>
  @@ -850,7 +1238,7 @@
        <reference idref='qname'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='childrenSeparator'>
  @@ -858,7 +1246,7 @@
        <primitive type='short'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='childrenOccurrence'>
  @@ -866,25 +1254,17 @@
        <primitive type='short'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='childrenEndGroup'>
  -    <throws>
  -     <reference idref='exception'/>
  -    </throws>
  -   </method>
  -   <method name='endChildrenContent'>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
      <method name='endContentModel'>
  -    <param name='element'>
  -     <reference idref='qname'/>
  -    </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
     </interface>
  @@ -901,7 +1281,7 @@
      <implements>
       <reference idref='sax-locator'/>
      </implements>
  -   <field name='entityReaders'>
  +   <field name='fEntityReaders'>
       <collection>
        <collector>
         <reference idref='java-stack'/>
  @@ -911,7 +1291,7 @@
        </items>
       </collection>
      </field>
  -   <field name='entityReaderChangeListeners'>
  +   <field name='fEntityReaderChangeListeners'>
       <collection>
        <collector>
         <reference idref='java-vector'/>
  @@ -923,19 +1303,25 @@
      </field>
      <constructor/>
      <method name='resolveEntity'>
  +    <param name='publicId'>
  +     <reference idref='java-string'/>
  +    </param>
       <param name='systemId'>
        <reference idref='java-string'/>
       </param>
       <returns>
  -     <reference idref='entity-reader'/>
  +     <reference idref='sax-input-source'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
  +    <throws>
  +     <reference idref='sax-exception'/>
  +    </throws>
      </method>
  -   <method name='prescanEncodingDecl'>
  -    <param name='entityReader'>
  -     <reference idref='entity-reader'/>
  +   <method name='createEntityReader'>
  +    <param name='inputSource'>
  +     <reference idref='sax-input-source'/>
       </param>
       <returns>
        <reference idref='entity-reader'/>
  @@ -950,20 +1336,17 @@
       </param>
      </method>
      <method name='peekEntityReader'>
  +    <param name='depth'>
  +     <primitive type='int'/>
  +    </param>
       <returns>
        <reference idref='entity-reader'/>
       </returns>
  -    <throws>
  -     <reference idref='java-empty-stack-exception'/>
  -    </throws>
      </method>
      <method name='popEntityReader'>
       <returns>
        <reference idref='entity-reader'/>
       </returns>
  -    <throws>
  -     <reference idref='java-empty-stack-exception'/>
  -    </throws>
      </method>
      <method name='addEntityReaderChangeListener'>
       <param name='entityReaderChangeListener'>
  @@ -979,36 +1362,55 @@
   
     <class id='entity-reader' name='XMLEntityReader'>
      <implements>
  -    <reference idref='configurable'/>
  +    <reference idref='sax-locator'/>
      </implements>
  -   <field name='entityManager'>
  +   <constant name='SCAN_ATT_COMPLETE'>
  +    <primitive type='short'/>
  +   </constant>
  +   <constant name='SCAN_ATT_CONTENT'>
  +    <primitive type='short'/>
  +   </constant>
  +   <constant name='SCAN_ATT_ENTITY'>
  +    <primitive type='short'/>
  +   </constant>
  +   <field name='fEntityManager'>
       <reference idref='entity-manager'/>
      </field>
  -   <field name='byteOffset'>
  +   <field name='fInputSource'>
  +    <reference idref='sax-input-source'/>
  +   </field>
  +   <field name='fRowNumber'>
  +    <primitive type='int'/>
  +   </field>
  +   <field name='fColumnNumber'>
  +    <primitive type='int'/>
  +   </field>
  +   <field name='fBytePosition'>
       <primitive type='long'/>
      </field>
  -   <field name='charOffset'>
  +   <field name='fCharPosition'>
       <primitive type='long'/>
      </field>
      <constructor>
       <param name='entityManager'>
        <reference idref='entity-manager'/>
       </param>
  +    <param name='inputSource'>
  +     <reference idref='sax-input-source'/>
  +    </param>
      </constructor>
  -   <method name='getByteOffset'>
  +   <method name='getBytePosition'>
       <returns>
        <primitive type='long'/>
       </returns>
      </method>
  -   <method name='getCharOffset'>
  +   <method name='getCharPosition'>
       <returns>
        <primitive type='long'/>
       </returns>
      </method>
  -   <method name='lookingAtChar'>
  -    <param name='ch'>
  -     <primitive type='char'/>
  -    </param>
  +   <!-- REVISIT
  +   <method name='lookingAtValidChar'>
       <param name='consume'>
        <primitive type='boolean'/>
       </param>
  @@ -1019,7 +1421,11 @@
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='lookingAtSpace'>
  +   -->
  +   <method name='lookingAtChar'>
  +    <param name='c'>
  +     <primitive type='char'/>
  +    </param>
       <param name='consume'>
        <primitive type='boolean'/>
       </param>
  @@ -1030,7 +1436,7 @@
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='lookingAtValidChar'>
  +   <method name='lookingAtSpace'>
       <param name='consume'>
        <primitive type='boolean'/>
       </param>
  @@ -1041,86 +1447,77 @@
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanAttributeValue'>
  -    <param name='quote'>
  -     <primitive type='char'/>
  +   <method name='scanName'>
  +    <param name='name'>
  +     <reference idref='string'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  -    </returns>
  -    <throws>
  -     <reference idref='java-io-exception'/>
  -    </throws>
  -   </method>
  -   <method name='scanCharEntityRef'>
  -    <param name='hexadecimal'>
        <primitive type='boolean'/>
  -    </param>
  -    <returns>
  -     <primitive type='int'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanContent'>
  -    <!-- REVISIT: Is this necessary?
  -    <param name='element'>
  -     <reference idref='qname'/>
  +   <method name='scanQName'>
  +    <param name='prefix'>
  +     <reference idref='string'/>
       </param>
  -    -->
  +    <param name='localpart'>
  +     <reference idref='string'/>
  +    </param>
  +    <param name='rawname'>
  +     <reference idref='string'/>
  +    </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanEntityValue'>
  -    <param name='quote'>
  +   <method name='scanToChar'>
  +    <param name='c'>
        <primitive type='char'/>
       </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
  -    <throws>
  -     <reference idref='java-io-exception'/>
  -    </throws>
  -   </method>
  -   <method name='scanInvalidChar'>
  +    <param name='text'>
  +     <reference idref='string'/>
  +    </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanName'>
  -    <param name='fastcheck'>
  -     <primitive type='char'/>
  +   <method name='scanContent'>
  +    <param name='content'>
  +     <reference idref='string'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanQName'>
  -    <param name='fastcheck'>
  +   <method name='scanAttContent'>
  +    <param name='quote'>
        <primitive type='char'/>
       </param>
  -    <param name='qname'>
  -     <reference idref='qname'/>
  +    <param name='content'>
  +     <reference idref='string'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='short'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='scanStringLiteral'>
  +   <method name='scanCharRef'>
  +    <param name='hexadecimal'>
  +     <primitive type='boolean'/>
  +    </param>
       <returns>
        <primitive type='int'/>
       </returns>
  @@ -1128,43 +1525,30 @@
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='skipName'>
  -    <param name='fastcheck'>
  +   <method name='skipToChar'>
  +    <param name='c'>
        <primitive type='char'/>
       </param>
  +    <param name='consume'>
  +     <primitive type='boolean'/>
  +    </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  -   <method name='skipNmtoken'>
  -    <param name='fastcheck'>
  -     <primitive type='char'/>
  -    </param>
  +   <method name='skipSpaces'>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
       <throws>
        <reference idref='java-io-exception'/>
       </throws>
  -   </method>
  -   <method name='skipPastSpace'>
  -    <throws>
  -     <reference idref='java-io-exception'/>
  -    </throws>
  -   </method>
  -   <method name='skipToChar'>
  -    <param name='ch'>
  -     <primitive type='char'/>
  -    </param>
  -    <throws>
  -     <reference idref='java-io-exception'/>
  -    </throws>
      </method>
  -   <method name='skippedString'>
  -    <param name='s'>
  +   <method name='skipString'>
  +    <param name='string'>
        <array>
         <primitive type='char'/>
        </array>
  @@ -1176,6 +1560,11 @@
        <reference idref='java-io-exception'/>
       </throws>
      </method>
  +   <method name='close'>
  +    <throws>
  +     <reference idref='java-io-exception'/>
  +    </throws>
  +   </method>
     </class>
   
     <interface id='entity-reader-change-listener' name='XMLEntityReaderChangeListener'>
  @@ -1184,7 +1573,7 @@
        <reference idref='entity-reader'/>
       </param>
       <throws>
  -     <reference idref='exception'/>
  +     <reference idref='sax-exception'/>
       </throws>
      </method>
     </interface>
  @@ -1201,31 +1590,31 @@
      <implements>
       <reference idref='document-handler'/>
      </implements>
  -   <field name='stringPool'>
  -    <note>This field is initialized on reset.</note>
  -    <reference idref='string-pool'/>
  -   </field>
  -   <field name='symbolTable'>
  +   <field name='fSymbolTable'>
       <note>This field is initialized on reset.</note>
       <reference idref='symbol-table'/>
      </field>
  -   <field name='errorReporter'>
  +   <field name='fErrorReporter'>
       <note>This field is initialized on reset.</note>
       <reference idref='error-reporter'/>
      </field>
  -   <field name='grammarPool'>
  +   <field name='fGrammarPool'>
       <note>This field is initialized on reset.</note>
       <reference idref='grammar-pool'/>
  +   </field>
  +   <field name='fNamespaces'>
  +    <note>This field is initialized on reset.</note>
  +    <primitive type='boolean'/>
      </field>
  -   <field name='namespacesEnabled'>
  +   <field name='fValidation'>
       <note>This field is initialized on reset.</note>
       <primitive type='boolean'/>
      </field>
  -   <field name='validationEnabled'>
  +   <field name='fDynamicValidation'>
       <note>This field is initialized on reset.</note>
       <primitive type='boolean'/>
      </field>
  -   <field name='documentHandler'>
  +   <field name='fDocumentHandler'>
       <reference idref='document-handler'/>
      </field>
      <constructor/>
  @@ -1237,7 +1626,7 @@
     </class>
   
     <class id='grammar-pool' name='GrammarPool'>
  -   <field name='grammars'>
  +   <field name='fGrammars'>
       <collection>
        <collector>
         <reference idref='java-hashtable'/>
  @@ -1278,10 +1667,18 @@
      <implements>
       <reference idref='content-spec-provider'/>
      </implements>
  -   <field name='grammarDocument'>
  +   <field name='fTargetNamespace'>
  +    <reference idref='java-string'/>
  +   </field>
  +   <field name='fGrammarDocument'>
       <reference idref='dom-document'/>
      </field>
      <constructor/>
  +   <method name='getTargetNamespace'>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
      <method name='getGrammarDocument'>
       <returns>
        <reference idref='dom-document'/>
  @@ -1289,7 +1686,7 @@
      </method>
      <method name='getElementDeclIndex'>
       <param name='elementDeclName'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='scope'>
        <primitive type='int'/>
  @@ -1326,6 +1723,17 @@
        <primitive type='int'/>
       </returns>
      </method>
  +   <method name='getAttributeDeclIndex'>
  +    <param name='elementDeclIndex'>
  +     <primitive type='int'/>
  +    </param>
  +    <param name='attributeDeclName'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <primitive type='int'/>
  +    </returns>
  +   </method>
      <method name='getAttributeDecl'>
       <param name='attributeDeclIndex'>
        <primitive type='int'/>
  @@ -1338,6 +1746,14 @@
        <primitive type='boolean'/>
       </returns>
      </method>
  +   <method name='getEntityDeclIndex'>
  +    <param name='entityDeclName'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <primitive type='int'/>
  +    </returns>
  +   </method>
      <method name='getEntityDecl'>
       <param name='entityDeclIndex'>
        <primitive type='int'/>
  @@ -1349,6 +1765,14 @@
        <primitive type='boolean'/>
       </returns>
      </method>
  +   <method name='getNotationDeclIndex'>
  +    <param name='notationDeclName'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <primitive type='int'/>
  +    </returns>
  +   </method>
      <method name='getNotationDecl'>
       <param name='notationDeclIndex'>
        <primitive type='int'/>
  @@ -1386,18 +1810,6 @@
      <constant name='TYPE_SIMPLE'>
       <primitive type='short'/>
      </constant>
  -   <constant name='DEFAULT_TYPE_DEFAULT'>
  -    <primitive type='short'/>
  -   </constant>
  -   <constant name='DEFAULT_TYPE_FIXED'>
  -    <primitive type='short'/>
  -   </constant>
  -   <constant name='DEFAULT_TYPE_IMPLIED'>
  -    <primitive type='short'/>
  -   </constant>
  -   <constant name='DEFAULT_TYPE_REQUIRED'>
  -    <primitive type='short'/>
  -   </constant>
      <field name='name' visibility='public'>
       <reference idref='qname'/>
      </field>
  @@ -1409,18 +1821,9 @@
      </field>
      <field name='contentSpec' visibility='public'>
       <primitive type='int'/>
  -   </field>
  -   <field name='list' visibility='public'>
  -    <primitive type='boolean'/>
  -   </field>
  -   <field name='defaultType' visibility='public'>
  -    <primitive type='short'/>
  -   </field>
  -   <field name='defaultValue' visibility='public'>
  -    <reference idref='java-string'/>
      </field>
  -   <field name='datatypeValidator' visibility='public'>
  -    <reference idref='datatype-validator'/>
  +   <field name='simpleType' visibility='public'>
  +    <reference idref='simple-type'/>
      </field>
      <method name='setValues'>
       <param name='name'>
  @@ -1434,18 +1837,9 @@
       </param>
       <param name='contentSpec'>
        <primitive type='int'/>
  -    </param>
  -    <param name='list'>
  -     <primitive type='boolean'/>
  -    </param>
  -    <param name='defaultType'>
  -     <primitive type='short'/>
  -    </param>
  -    <param name='defaultValue'>
  -     <reference idref='java-string'/>
       </param>
  -    <param name='datatypeValidator'>
  -     <reference idref='datatype-validator'/>
  +    <param name='simpleType'>
  +     <reference idref='simple-type'/>
       </param>
      </method>
      <method name='clear'/>
  @@ -1473,23 +1867,40 @@
      <field name='type' visibility='public'>
       <primitive type='short'/>
      </field>
  -   <field name='value' visibility='public'>
  +   <field name='left' visibility='public'>
       <primitive type='int'/>
      </field>
  -   <field name='otherValue' visibility='public'>
  +   <field name='right' visibility='public'>
       <primitive type='int'/>
      </field>
  +   <field name='uri' visibility='public'>
  +    <reference idref='java-string'/>
  +   </field>
  +   <field name='localpart' visibility='public'>
  +    <reference idref='java-string'/>
  +   </field>
      <method name='setValues'>
       <param name='type'>
        <primitive type='short'/>
       </param>
  -    <param name='value'>
  +    <param name='left'>
        <primitive type='int'/>
       </param>
  -    <param name='otherValue'>
  +    <param name='right'>
        <primitive type='int'/>
       </param>
      </method>
  +   <method name='setValues'>
  +    <param name='type'>
  +     <primitive type='short'/>
  +    </param>
  +    <param name='uri'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='localpart'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </method>
      <method name='clear'/>
     </class>
   
  @@ -1509,6 +1920,30 @@
     </interface>                            
                               
     <class id='attribute-decl' name='XMLAttributeDecl'>
  +   <field name='name' visibility='public'>
  +    <reference idref='qname'/>
  +   </field>
  +   <field name='simpleType' visibility='public'>
  +    <reference idref='simple-type'/>
  +   </field>
  +   <field name='optional' visibility='public'>
  +    <primitive type='boolean'/>
  +   </field>
  +   <method name='setValues'>
  +    <param name='name'>
  +     <reference idref='qname'/>
  +    </param>
  +    <param name='simpleType'>
  +     <reference idref='simple-type'/>
  +    </param>
  +    <param name='optional'>
  +     <primitive type='boolean'/>
  +    </param>
  +   </method>
  +   <method name='clear'/>
  +  </class>
  +
  +  <class id='simple-type' name='XMLSimpleType'>
      <constant name='TYPE_CDATA'>
       <primitive type='short'/>
      </constant>
  @@ -1530,7 +1965,7 @@
      <constant name='TYPE_NOTATION'>
       <primitive type='short'/>
      </constant>
  -   <constant name='TYPE_SIMPLE'>
  +   <constant name='TYPE_NAMED'>
       <primitive type='short'/>
      </constant>
      <constant name='DEFAULT_TYPE_DEFAULT'>
  @@ -1545,14 +1980,16 @@
      <constant name='DEFAULT_TYPE_REQUIRED'>
       <primitive type='short'/>
      </constant>
  -   <field name='name' visibility='public'>
  -    <reference idref='qname'/>
  -   </field>
  -   <field name='type' visibility='public'>
  +   <field name='type'>
       <primitive type='short'/>
      </field>
  +   <field name='name'>
  +    <reference idref='java-string'/>
  +   </field>
      <field name='enumeration' visibility='public'>
  -    <primitive type='int'/>
  +    <array>
  +     <reference idref='java-string'/>
  +    </array>
      </field>
      <field name='list' visibility='public'>
       <primitive type='boolean'/>
  @@ -1567,14 +2004,16 @@
       <reference idref='datatype-validator'/>
      </field>
      <method name='setValues'>
  -    <param name='name'>
  -     <reference idref='qname'/>
  -    </param>
       <param name='type'>
        <primitive type='short'/>
       </param>
  +    <param name='name'>
  +     <reference idref='java-string'/>
  +    </param>
       <param name='enumeration'>
  -     <primitive type='int'/>
  +     <array>
  +      <reference idref='java-string'/>
  +     </array>
       </param>
       <param name='list'>
        <primitive type='boolean'/>
  @@ -1593,43 +2032,33 @@
     </class>
   
     <class id='entity-decl' name='XMLEntityDecl'>
  -   <field name='parentEntity' visibility='public'>
  -    <primitive type='int'/>
  -   </field>
      <field name='name' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='publicId' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='systemId' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='notation' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='isPE' visibility='public'>
       <primitive type='boolean'/>
      </field>
      <method name='setValues'>
  -    <param name='parentEntity'>
  -     <primitive type='int'/>
  -    </param>
       <param name='name'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='publicId'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='systemId'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='notation'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='isPE'>
        <primitive type='boolean'/>
  @@ -1640,23 +2069,23 @@
   
     <class id='notation-decl' name='XMLNotationDecl'>
      <field name='name' visibility='public'>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='publicId' visibility='public'>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='systemId' visibility='public'>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <method name='setValues'>
       <param name='name'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='publicId'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
       <param name='systemId'>
  -     <primitive type='int'/>
  +    <reference idref='java-string'/>
       </param>
      </method>
      <method name='clear'/>
  @@ -1740,7 +2169,7 @@
   
     <class id='invalid-datatype-facet-exception' name='InvalidDatatypeFacetException'>
      <extends>
  -    <reference idref='exception'/>
  +    <reference idref='sax-exception'/>
      </extends>
      <constructor/>
      <constructor>
  @@ -1765,7 +2194,7 @@
   
     <class id='invalid-datatype-value-exception' name='InvalidDatatypeValueException'>
      <extends>
  -    <reference idref='exception'/>
  +    <reference idref='sax-exception'/>
      </extends>
      <constructor/>
      <constructor>
  @@ -1805,13 +2234,16 @@
        <primitive type='int'/>
       </returns>
      </method>
  +   <!-- REVISIT
      <method name='whatCanGoHere'>
       <param name='insertableElementsInfo'>
        <reference idref='insertable-elements-info'/>
       </param>
      </method>
  +   -->
     </interface>
   
  +  <!-- REVISIT
     <class id='insertable-elements-info' name='InsertableElementsInfo'>
      <field name='canHoldPCData' visibility='public'>
       <primitive type='boolean'/>
  @@ -1877,6 +2309,7 @@
      </method>
      <method name='clear'/>
     </class>
  +  -->
   
    </category>
   
  @@ -1893,13 +2326,13 @@
      <constant name='SEQUENCE'>
       <primitive type='short'/>
      </constant>
  -   <field name='operator'>
  +   <field name='fOperator'>
       <primitive type='short'/>
      </field>
  -   <field name='firstChild'>
  +   <field name='fFirstChild'>
       <reference idref='qname'/>
      </field>
  -   <field name='secondChild'>
  +   <field name='fSecondChild'>
       <reference idref='qname'/>
      </field>
      <constructor>
  @@ -1919,15 +2352,15 @@
      <implements>
       <reference idref='content-model'/>
      </implements>
  -   <field name='count'>
  +   <field name='fCount'>
       <primitive type='int'/>
      </field>
  -   <field name='children'>
  +   <field name='fChildren'>
       <array>
        <reference idref='qname'/>
       </array>
      </field>
  -   <field name='ordered'>
  +   <field name='fOrdered'>
       <primitive type='boolean'/>
      </field>
      <constructor>
  @@ -1968,7 +2401,7 @@
      <implements>
       <reference idref='datatype-validator-factory'/>
      </implements>
  -   <field name='baseTypes'>
  +   <field name='fBaseTypes'>
       <collection>
        <collector>
         <reference idref='java-hashtable'/>
  @@ -1984,7 +2417,7 @@
      <implements>
       <reference idref='datatype-validator'/>
      </implements>
  -   <field name='facets'>
  +   <field name='fFacets'>
       <collection>
        <collector>
         <reference idref='java-hashtable'/>
  @@ -2046,8 +2479,8 @@
   
    </category>
   
  - <!-- Category: VALIDATING: DTD -->
  - <category name='Validating: DTD' package='&package;.validators.dtd'>
  + <!-- Category: VALIDATING: Grammars -->
  + <category name='Validating: Grammars' package='&package;.validators.grammars'>
   
     <class id='dtd-grammar' name='DTDGrammar'>
      <extends>
  @@ -2059,14 +2492,26 @@
      <implements>
       <reference idref='dtd-content-model-handler'/>
      </implements>
  +   <field name='setDTDHandler'>
  +    <reference idref='dtd-handler'/>
  +   </field>
  +   <field name='setDTDContentModelHandler'>
  +    <reference idref='dtd-content-model-handler'/>
  +   </field>
      <constructor/>
  +   <constructor>
  +    <param name='targetNamespace'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </constructor>
  +   <method name='setDTDHandler'>
  +    <reference idref='dtd-handler'/>
  +   </method>
  +   <method name='setDTDContentModelHandler'>
  +    <reference idref='dtd-content-model-handler'/>
  +   </method>
     </class>
   
  - </category>
  -
  - <!-- Category: VALIDATING: Schema -->
  - <category name='Validating: Schema' package='&package;.validators.schema'>
  -
     <class id='schema-grammar' name='SchemaGrammar'>
      <extends>
       <reference idref='grammar'/>
  @@ -2093,10 +2538,10 @@
    <category name='Parsing' package='&package;.parsers'>
   
     <class id='caching-parser-pool' name='CachingParserPool'>
  -   <field name='symbolTable'>
  +   <field name='fSymbolTable'>
       <reference idref='symbol-table'/>
      </field>
  -   <field name='grammarPool'>
  +   <field name='fGrammarPool'>
       <reference idref='grammar-pool'/>
      </field>
      <constructor/>
  @@ -2154,24 +2599,27 @@
      <implements>
       <reference idref='configuration-manager'/>
      </implements>
  -   <field name='stringPool'>
  -    <reference idref='string-pool'/>
  -   </field>
  -   <field name='symbolTable'>
  +   <field name='fSymbolTable'>
       <reference idref='symbol-table'/>
      </field>
  -   <field name='entityManager'>
  +   <field name='fEntityManager'>
       <reference idref='entity-manager'/>
      </field>
  -   <field name='errorReporter'>
  +   <field name='fErrorReporter'>
       <reference idref='error-reporter'/>
  +   </field>
  +   <field name='fNamespaces'>
  +    <primitive type='boolean'/>
      </field>
  -   <field name='namespacesEnabled'>
  +   <field name='fValidation'>
       <primitive type='boolean'/>
      </field>
  -   <field name='validationEnabled'>
  +   <field name='fDynamicValidation'>
       <primitive type='boolean'/>
      </field>
  +   <field name='fContinueAfterFatalError'>
  +    <primitive type='boolean'/>
  +   </field>
      <constructor/>
      <constructor visibility='protected'>
       <param name='symbolTable'>
  @@ -2275,19 +2723,19 @@
      <implements>
       <reference idref='document-handler'/>
      </implements>
  -   <field name='scanner'>
  +   <field name='fScanner'>
       <reference idref='document-scanner'/>
      </field>
  -   <field name='dtdScanner'>
  +   <field name='fDTDScanner'>
       <reference idref='dtd-scanner'/>
      </field>
  -   <field name='validator'>
  +   <field name='fValidator'>
       <reference idref='validator'/>
      </field>
  -   <field name='grammarPool'>
  +   <field name='fGrammarPool'>
       <reference idref='grammar-pool'/>
      </field>
  -   <field name='datatypeValidatorFactory'>
  +   <field name='fDatatypeValidatorFactory'>
       <reference idref='datatype-validator-factory'/>
      </field>
      <constructor/>
  @@ -2352,7 +2800,7 @@
      <implements>
       <reference idref='configuration-manager'/>
      </implements>
  -   <field name='datatypeValidatorFactory'>
  +   <field name='fDatatypeValidatorFactory'>
       <reference idref='datatype-validator-factory'/>
      </field>
      <constructor visibility='protected'>
  @@ -2372,7 +2820,7 @@
      <implements>
       <reference idref='dtd-content-model-handler'/>
      </implements>
  -   <field name='dtdScanner'>
  +   <field name='fDTDScanner'>
       <reference idref='dtd-scanner'/>
      </field>
      <constructor>
  @@ -2391,10 +2839,10 @@
      <extends>
       <reference idref='grammar-parser'/>
      </extends>
  -   <field name='domParser'>
  +   <field name='fDOMParser'>
       <reference idref='domparser'/>
      </field>
  -   <field name='grammarPool'>
  +   <field name='fGrammarPool'>
       <reference idref='grammar-pool'/>
      </field>
      <constructor>
  @@ -2417,65 +2865,195 @@
    <!-- Category: UTILS -->
    <category name='Utils' package='&package;.utils'>
   
  -  <class id='string-pool' name='StringPool'>
  -   <constructor/>
  -   <method name='addString'>
  -    <param name='string'>
  -     <reference idref='java-string'/>
  +  <class id='char' name='XMLChar'>
  +   <constant name='CHARS'>
  +    <array>
  +     <primitive type='byte'/>
  +    </array>
  +   </constant>
  +   <constant name='MASK_VALID'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_LETTER'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_COMBINING_CHAR'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_DIGIT'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_EXTENDER'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_SPACE'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_NAME_START'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <constant name='MASK_NAME'>
  +    <primitive type='byte'/>
  +   </constant>
  +   <method name='isValid'>
  +    <param name='c'>
  +     <primitive type='char'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
      </method>
  -   <method name='addString'>
  -    <param name='stringProducer'>
  -     <reference idref='string-producer'/>
  +   <method name='isLetter'>
  +    <param name='c'>
  +     <primitive type='char'/>
       </param>
  -    <param name='offset'>
  -     <primitive type='int'/>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='isCombiningChar'>
  +    <param name='c'>
  +     <primitive type='char'/>
       </param>
  -    <param name='length'>
  -     <primitive type='int'/>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='isDigit'>
  +    <param name='c'>
  +     <primitive type='char'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <primitive type='boolean'/>
       </returns>
      </method>
  -   <method name='toString'>
  -    <param name='stringIndex'>
  -     <primitive type='int'/>
  +   <method name='isExtender'>
  +    <param name='c'>
  +     <primitive type='char'/>
       </param>
       <returns>
  -     <reference idref='java-string'/>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='isSpace'>
  +    <param name='c'>
  +     <primitive type='char'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='isNameStart'>
  +    <param name='c'>
  +     <primitive type='char'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
  +    </returns>
  +   </method>
  +   <method name='isName'>
  +    <param name='c'>
  +     <primitive type='char'/>
  +    </param>
  +    <returns>
  +     <primitive type='boolean'/>
       </returns>
      </method>
     </class>
   
  -  <interface id='string-producer' name='StringProducer'>
  -   <method name='toString'>
  -    <param name='offset'>
  -     <primitive type='int'/>
  +  <class id='encoding-map' name='EncodingMap'>
  +   <field name='fIANA2JavaMap'>
  +    <collection>
  +     <collector>
  +      <reference idref='java-hashtable'/>
  +     </collector>
  +     <items>
  +      <reference idref='java-string'/>
  +     </items>
  +    </collection>
  +   </field>
  +   <field name='fJava2IANAMap'>
  +    <collection>
  +     <collector>
  +      <reference idref='java-hashtable'/>
  +     </collector>
  +     <items>
  +      <reference idref='java-string'/>
  +     </items>
  +    </collection>
  +   </field>
  +   <constructor/>
  +   <method name='putIANA2JavaMapping'>
  +    <param name='ianaEncoding'>
  +     <reference idref='java-string'/>
       </param>
  -    <param name='length'>
  -     <primitive type='int'/>
  +    <param name='javaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </method>
  +   <method name='getIANA2JavaMapping'>
  +    <param name='ianaEncoding'>
  +     <reference idref='java-string'/>
       </param>
       <returns>
        <reference idref='java-string'/>
       </returns>
      </method>
  -  </interface>
  +   <method name='removeIANA2JavaMapping'>
  +    <param name='ianaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
  +   <method name='putJava2IANAMapping'>
  +    <param name='javaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='ianaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </method>
  +   <method name='getJava2IANAMapping'>
  +    <param name='javaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
  +   <method name='removeJava2IANAMapping'>
  +    <param name='javaEncoding'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
  +  </class>
   
     <class id='symbol-table' name='SymbolTable'>
  -   <field name='symbolHasher'>
  +   <field name='fSymbolHasher'>
       <reference idref='symbol-hasher'/>
      </field>
      <constructor/>
  +   <constructor>
  +    <param name='symbolHasher'>
  +     <reference idref='symbol-hasher'/>
  +    </param>
  +   </constructor>
  +   <method name='getSymbolHasher'>
  +    <returns>
  +     <reference idref='symbol-hasher'/>
  +    </returns>
  +   </method>
      <method name='addSymbol'>
       <param name='symbol'>
        <reference idref='java-string'/>
       </param>
       <returns>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </returns>
      </method>
      <method name='addSymbol'>
  @@ -2488,15 +3066,7 @@
        <primitive type='int'/>
       </param>
       <param name='length'>
  -     <primitive type='int'/>
  -    </param>
  -    <returns>
  -     <primitive type='int'/>
  -    </returns>
  -   </method>
  -   <method name='toString'>
  -    <param name='symbolIndex'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <returns>
        <reference idref='java-string'/>
  @@ -2533,36 +3103,57 @@
   
     <class id='qname' name='QName'>
      <field name='prefix' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='localpart' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='rawname' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <field name='uri' visibility='public'>
  -    <note>Index into the symbol table.</note>
  -    <primitive type='int'/>
  +    <reference idref='java-string'/>
      </field>
      <method name='setValues'>
       <param name='prefix'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='localpart'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='rawname'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
       <param name='uri'>
  -     <primitive type='int'/>
  +     <reference idref='java-string'/>
       </param>
      </method>
      <method name='clear'/>
  +  </class>
  +
  +  <class id='namespace-scope' name='NamespaceScope'>
  +   <field name='fDepth'>
  +    <primitive type='int'/>
  +   </field>
  +   <constructor/>
  +   <method name='increaseDepth'/>
  +   <method name='decreaseDepth'/>
  +   <method name='setNamespaceForPrefix'>
  +    <param name='prefix'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <param name='namespace'>
  +     <reference idref='java-string'/>
  +    </param>
  +   </method>
  +   <method name='getNamespaceForPrefix'>
  +    <param name='prefix'>
  +     <reference idref='java-string'/>
  +    </param>
  +    <returns>
  +     <reference idref='java-string'/>
  +    </returns>
  +   </method>
     </class>
   
     <interface id='message-formatter' name='MessageFormatter'>
  
  
  
  1.3       +6 -0      xml-xerces/java/docs/design.xsl
  
  Index: design.xsl
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/docs/design.xsl,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- design.xsl	2000/05/20 01:06:29	1.2
  +++ design.xsl	2000/06/07 22:03:40	1.3
  @@ -179,6 +179,12 @@
     <xsl:value-of select='@type'/>
    </xsl:template>
   
  + <xsl:template match='union'>
  +  <xsl:for-each select='part'>
  +   <xsl:apply-templates select='.'/>
  +  </xsl:for-each>
  + </xsl:template>
  +
    <xsl:template match='reference'>
     <xsl:choose>
      <xsl:when test='id(@idref)[name()="interface"]'>