| 1 | 
         768 | 
         jeremybenn | 
         /*
  | 
      
      
         | 2 | 
          | 
          | 
          * Copyright (c) 2004 World Wide Web Consortium,
  | 
      
      
         | 3 | 
          | 
          | 
          *
  | 
      
      
         | 4 | 
          | 
          | 
          * (Massachusetts Institute of Technology, European Research Consortium for
  | 
      
      
         | 5 | 
          | 
          | 
          * Informatics and Mathematics, Keio University). All Rights Reserved. This
  | 
      
      
         | 6 | 
          | 
          | 
          * work is distributed under the W3C(r) Software License [1] in the hope that
  | 
      
      
         | 7 | 
          | 
          | 
          * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
  | 
      
      
         | 8 | 
          | 
          | 
          * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  | 
      
      
         | 9 | 
          | 
          | 
          *
  | 
      
      
         | 10 | 
          | 
          | 
          * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
  | 
      
      
         | 11 | 
          | 
          | 
          */
  | 
      
      
         | 12 | 
          | 
          | 
          
  | 
      
      
         | 13 | 
          | 
          | 
         package org.w3c.dom.ls;
  | 
      
      
         | 14 | 
          | 
          | 
          
  | 
      
      
         | 15 | 
          | 
          | 
         import org.w3c.dom.Document;
  | 
      
      
         | 16 | 
          | 
          | 
         import org.w3c.dom.DOMConfiguration;
  | 
      
      
         | 17 | 
          | 
          | 
         import org.w3c.dom.Node;
  | 
      
      
         | 18 | 
          | 
          | 
         import org.w3c.dom.DOMException;
  | 
      
      
         | 19 | 
          | 
          | 
          
  | 
      
      
         | 20 | 
          | 
          | 
         /**
  | 
      
      
         | 21 | 
          | 
          | 
          *  An interface to an object that is able to build, or augment, a DOM tree
  | 
      
      
         | 22 | 
          | 
          | 
          * from various input sources.
  | 
      
      
         | 23 | 
          | 
          | 
          * <p> <code>LSParser</code> provides an API for parsing XML and building the
  | 
      
      
         | 24 | 
          | 
          | 
          * corresponding DOM document structure. A <code>LSParser</code> instance
  | 
      
      
         | 25 | 
          | 
          | 
          * can be obtained by invoking the
  | 
      
      
         | 26 | 
          | 
          | 
          * <code>DOMImplementationLS.createLSParser()</code> method.
  | 
      
      
         | 27 | 
          | 
          | 
          * <p> As specified in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 28 | 
          | 
          | 
          * , when a document is first made available via the LSParser:
  | 
      
      
         | 29 | 
          | 
          | 
          * <ul>
  | 
      
      
         | 30 | 
          | 
          | 
          * <li> there will
  | 
      
      
         | 31 | 
          | 
          | 
          * never be two adjacent nodes of type NODE_TEXT, and there will never be
  | 
      
      
         | 32 | 
          | 
          | 
          * empty text nodes.
  | 
      
      
         | 33 | 
          | 
          | 
          * </li>
  | 
      
      
         | 34 | 
          | 
          | 
          * <li> it is expected that the <code>value</code> and
  | 
      
      
         | 35 | 
          | 
          | 
          * <code>nodeValue</code> attributes of an <code>Attr</code> node initially
  | 
      
      
         | 36 | 
          | 
          | 
          * return the <a href='http://www.w3.org/TR/2004/REC-xml-20040204#AVNormalize'>XML 1.0
  | 
      
      
         | 37 | 
          | 
          | 
          * normalized value</a>. However, if the parameters "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-validate-if-schema'>
  | 
      
      
         | 38 | 
          | 
          | 
          * validate-if-schema</a>" and "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-datatype-normalization'>
  | 
      
      
         | 39 | 
          | 
          | 
          * datatype-normalization</a>" are set to <code>true</code>, depending on the attribute normalization
  | 
      
      
         | 40 | 
          | 
          | 
          * used, the attribute values may differ from the ones obtained by the XML
  | 
      
      
         | 41 | 
          | 
          | 
          * 1.0 attribute normalization. If the parameters "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-datatype-normalization'>
  | 
      
      
         | 42 | 
          | 
          | 
          * datatype-normalization</a>" is set to <code>false</code>, the XML 1.0 attribute normalization is
  | 
      
      
         | 43 | 
          | 
          | 
          * guaranteed to occur, and if the attributes list does not contain
  | 
      
      
         | 44 | 
          | 
          | 
          * namespace declarations, the <code>attributes</code> attribute on
  | 
      
      
         | 45 | 
          | 
          | 
          * <code>Element</code> node represents the property <b>[attributes]</b> defined in [<a href='http://www.w3.org/TR/2004/REC-xml-infoset-20040204/'>XML Information Set</a>]
  | 
      
      
         | 46 | 
          | 
          | 
          * .
  | 
      
      
         | 47 | 
          | 
          | 
          * </li>
  | 
      
      
         | 48 | 
          | 
          | 
          * </ul>
  | 
      
      
         | 49 | 
          | 
          | 
          * <p> Asynchronous <code>LSParser</code> objects are expected to also
  | 
      
      
         | 50 | 
          | 
          | 
          * implement the <code>events::EventTarget</code> interface so that event
  | 
      
      
         | 51 | 
          | 
          | 
          * listeners can be registered on asynchronous <code>LSParser</code>
  | 
      
      
         | 52 | 
          | 
          | 
          * objects.
  | 
      
      
         | 53 | 
          | 
          | 
          * <p> Events supported by asynchronous <code>LSParser</code> objects are:
  | 
      
      
         | 54 | 
          | 
          | 
          * <dl>
  | 
      
      
         | 55 | 
          | 
          | 
          * <dt>load</dt>
  | 
      
      
         | 56 | 
          | 
          | 
          * <dd>
  | 
      
      
         | 57 | 
          | 
          | 
          *  The <code>LSParser</code> finishes to load the document. See also the
  | 
      
      
         | 58 | 
          | 
          | 
          * definition of the <code>LSLoadEvent</code> interface. </dd>
  | 
      
      
         | 59 | 
          | 
          | 
          * <dt>progress</dt>
  | 
      
      
         | 60 | 
          | 
          | 
          * <dd> The
  | 
      
      
         | 61 | 
          | 
          | 
          * <code>LSParser</code> signals progress as data is parsed.  This
  | 
      
      
         | 62 | 
          | 
          | 
          * specification does not attempt to define exactly when progress events
  | 
      
      
         | 63 | 
          | 
          | 
          * should be dispatched. That is intentionally left as
  | 
      
      
         | 64 | 
          | 
          | 
          * implementation-dependent. Here is one example of how an application might
  | 
      
      
         | 65 | 
          | 
          | 
          * dispatch progress events: Once the parser starts receiving data, a
  | 
      
      
         | 66 | 
          | 
          | 
          * progress event is dispatched to indicate that the parsing starts. From
  | 
      
      
         | 67 | 
          | 
          | 
          * there on, a progress event is dispatched for every 4096 bytes of data
  | 
      
      
         | 68 | 
          | 
          | 
          * that is received and processed. This is only one example, though, and
  | 
      
      
         | 69 | 
          | 
          | 
          * implementations can choose to dispatch progress events at any time while
  | 
      
      
         | 70 | 
          | 
          | 
          * parsing, or not dispatch them at all.  See also the definition of the
  | 
      
      
         | 71 | 
          | 
          | 
          * <code>LSProgressEvent</code> interface. </dd>
  | 
      
      
         | 72 | 
          | 
          | 
          * </dl>
  | 
      
      
         | 73 | 
          | 
          | 
          * <p ><b>Note:</b>  All events defined in this specification use the
  | 
      
      
         | 74 | 
          | 
          | 
          * namespace URI <code>"http://www.w3.org/2002/DOMLS"</code>.
  | 
      
      
         | 75 | 
          | 
          | 
          * <p> While parsing an input source, errors are reported to the application
  | 
      
      
         | 76 | 
          | 
          | 
          * through the error handler (<code>LSParser.domConfig</code>'s "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler'>
  | 
      
      
         | 77 | 
          | 
          | 
          * error-handler</a>" parameter). This specification does in no way try to define all possible
  | 
      
      
         | 78 | 
          | 
          | 
          * errors that can occur while parsing XML, or any other markup, but some
  | 
      
      
         | 79 | 
          | 
          | 
          * common error cases are defined. The types (<code>DOMError.type</code>) of
  | 
      
      
         | 80 | 
          | 
          | 
          * errors and warnings defined by this specification are:
  | 
      
      
         | 81 | 
          | 
          | 
          * <dl>
  | 
      
      
         | 82 | 
          | 
          | 
          * <dt>
  | 
      
      
         | 83 | 
          | 
          | 
          * <code>"check-character-normalization-failure" [error]</code> </dt>
  | 
      
      
         | 84 | 
          | 
          | 
          * <dd> Raised if
  | 
      
      
         | 85 | 
          | 
          | 
          * the parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-check-character-normalization'>
  | 
      
      
         | 86 | 
          | 
          | 
          * check-character-normalization</a>" is set to true and a string is encountered that fails normalization
  | 
      
      
         | 87 | 
          | 
          | 
          * checking. </dd>
  | 
      
      
         | 88 | 
          | 
          | 
          * <dt><code>"doctype-not-allowed" [fatal]</code></dt>
  | 
      
      
         | 89 | 
          | 
          | 
          * <dd> Raised if the
  | 
      
      
         | 90 | 
          | 
          | 
          * configuration parameter "disallow-doctype" is set to <code>true</code>
  | 
      
      
         | 91 | 
          | 
          | 
          * and a doctype is encountered. </dd>
  | 
      
      
         | 92 | 
          | 
          | 
          * <dt><code>"no-input-specified" [fatal]</code></dt>
  | 
      
      
         | 93 | 
          | 
          | 
          * <dd>
  | 
      
      
         | 94 | 
          | 
          | 
          * Raised when loading a document and no input is specified in the
  | 
      
      
         | 95 | 
          | 
          | 
          * <code>LSInput</code> object. </dd>
  | 
      
      
         | 96 | 
          | 
          | 
          * <dt>
  | 
      
      
         | 97 | 
          | 
          | 
          * <code>"pi-base-uri-not-preserved" [warning]</code></dt>
  | 
      
      
         | 98 | 
          | 
          | 
          * <dd> Raised if a processing
  | 
      
      
         | 99 | 
          | 
          | 
          * instruction is encountered in a location where the base URI of the
  | 
      
      
         | 100 | 
          | 
          | 
          * processing instruction can not be preserved.  One example of a case where
  | 
      
      
         | 101 | 
          | 
          | 
          * this warning will be raised is if the configuration parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-entities'>
  | 
      
      
         | 102 | 
          | 
          | 
          * entities</a>" is set to <code>false</code> and the following XML file is parsed:
  | 
      
      
         | 103 | 
          | 
          | 
          * <pre>
  | 
      
      
         | 104 | 
          | 
          | 
          * <!DOCTYPE root [ <!ENTITY e SYSTEM 'subdir/myentity.ent' ]>
  | 
      
      
         | 105 | 
          | 
          | 
          * <root> &e; </root></pre>
  | 
      
      
         | 106 | 
          | 
          | 
          *  And <code>subdir/myentity.ent</code>
  | 
      
      
         | 107 | 
          | 
          | 
          * contains:
  | 
      
      
         | 108 | 
          | 
          | 
          * <pre><one> <two/> </one> <?pi 3.14159?>
  | 
      
      
         | 109 | 
          | 
          | 
          * <more/></pre>
  | 
      
      
         | 110 | 
          | 
          | 
          * </dd>
  | 
      
      
         | 111 | 
          | 
          | 
          * <dt><code>"unbound-prefix-in-entity" [warning]</code></dt>
  | 
      
      
         | 112 | 
          | 
          | 
          * <dd> An
  | 
      
      
         | 113 | 
          | 
          | 
          * implementation dependent warning that may be raised if the configuration
  | 
      
      
         | 114 | 
          | 
          | 
          * parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-namespaces'>
  | 
      
      
         | 115 | 
          | 
          | 
          * namespaces</a>" is set to <code>true</code> and an unbound namespace prefix is
  | 
      
      
         | 116 | 
          | 
          | 
          * encountered in an entity's replacement text. Raising this warning is not
  | 
      
      
         | 117 | 
          | 
          | 
          * enforced since some existing parsers may not recognize unbound namespace
  | 
      
      
         | 118 | 
          | 
          | 
          * prefixes in the replacement text of entities. </dd>
  | 
      
      
         | 119 | 
          | 
          | 
          * <dt>
  | 
      
      
         | 120 | 
          | 
          | 
          * <code>"unknown-character-denormalization" [fatal]</code></dt>
  | 
      
      
         | 121 | 
          | 
          | 
          * <dd> Raised if the
  | 
      
      
         | 122 | 
          | 
          | 
          * configuration parameter "ignore-unknown-character-denormalizations" is
  | 
      
      
         | 123 | 
          | 
          | 
          * set to <code>false</code> and a character is encountered for which the
  | 
      
      
         | 124 | 
          | 
          | 
          * processor cannot determine the normalization properties. </dd>
  | 
      
      
         | 125 | 
          | 
          | 
          * <dt>
  | 
      
      
         | 126 | 
          | 
          | 
          * <code>"unsupported-encoding" [fatal]</code></dt>
  | 
      
      
         | 127 | 
          | 
          | 
          * <dd> Raised if an unsupported
  | 
      
      
         | 128 | 
          | 
          | 
          * encoding is encountered. </dd>
  | 
      
      
         | 129 | 
          | 
          | 
          * <dt><code>"unsupported-media-type" [fatal]</code></dt>
  | 
      
      
         | 130 | 
          | 
          | 
          * <dd>
  | 
      
      
         | 131 | 
          | 
          | 
          * Raised if the configuration parameter "supported-media-types-only" is set
  | 
      
      
         | 132 | 
          | 
          | 
          * to <code>true</code> and an unsupported media type is encountered. </dd>
  | 
      
      
         | 133 | 
          | 
          | 
          * </dl>
  | 
      
      
         | 134 | 
          | 
          | 
          * <p> In addition to raising the defined errors and warnings, implementations
  | 
      
      
         | 135 | 
          | 
          | 
          * are expected to raise implementation specific errors and warnings for any
  | 
      
      
         | 136 | 
          | 
          | 
          * other error and warning cases such as IO errors (file not found,
  | 
      
      
         | 137 | 
          | 
          | 
          * permission denied,...), XML well-formedness errors, and so on.
  | 
      
      
         | 138 | 
          | 
          | 
          * <p>See also the <a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407'>Document Object Model (DOM) Level 3 Load
  | 
      
      
         | 139 | 
          | 
          | 
         and Save Specification</a>.
  | 
      
      
         | 140 | 
          | 
          | 
          */
  | 
      
      
         | 141 | 
          | 
          | 
         public interface LSParser {
  | 
      
      
         | 142 | 
          | 
          | 
             /**
  | 
      
      
         | 143 | 
          | 
          | 
              *  The <code>DOMConfiguration</code> object used when parsing an input
  | 
      
      
         | 144 | 
          | 
          | 
              * source. This <code>DOMConfiguration</code> is specific to the parse
  | 
      
      
         | 145 | 
          | 
          | 
              * operation. No parameter values from this <code>DOMConfiguration</code>
  | 
      
      
         | 146 | 
          | 
          | 
              *  object are passed automatically to the <code>DOMConfiguration</code>
  | 
      
      
         | 147 | 
          | 
          | 
              * object on the <code>Document</code> that is created, or used, by the
  | 
      
      
         | 148 | 
          | 
          | 
              * parse operation. The DOM application is responsible for passing any
  | 
      
      
         | 149 | 
          | 
          | 
              * needed parameter values from this <code>DOMConfiguration</code>
  | 
      
      
         | 150 | 
          | 
          | 
              * object to the <code>DOMConfiguration</code> object referenced by the
  | 
      
      
         | 151 | 
          | 
          | 
              * <code>Document</code> object.
  | 
      
      
         | 152 | 
          | 
          | 
              * <br> In addition to the parameters recognized in on the <a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMConfiguration'>
  | 
      
      
         | 153 | 
          | 
          | 
              * DOMConfiguration</a> interface defined in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 154 | 
          | 
          | 
              * , the <code>DOMConfiguration</code> objects for <code>LSParser</code>
  | 
      
      
         | 155 | 
          | 
          | 
              * add or modify the following parameters:
  | 
      
      
         | 156 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 157 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 158 | 
          | 
          | 
              * <code>"charset-overrides-xml-encoding"</code></dt>
  | 
      
      
         | 159 | 
          | 
          | 
              * <dd>
  | 
      
      
         | 160 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 161 | 
          | 
          | 
              * <dt><code>true</code></dt>
  | 
      
      
         | 162 | 
          | 
          | 
              * <dd>[<em>optional</em>] (<em>default</em>) If a higher level protocol such as HTTP [<a href='http://www.ietf.org/rfc/rfc2616.txt'>IETF RFC 2616</a>] provides an
  | 
      
      
         | 163 | 
          | 
          | 
              * indication of the character encoding of the input stream being
  | 
      
      
         | 164 | 
          | 
          | 
              * processed, that will override any encoding specified in the XML
  | 
      
      
         | 165 | 
          | 
          | 
              * declaration or the Text declaration (see also section 4.3.3,
  | 
      
      
         | 166 | 
          | 
          | 
              * "Character Encoding in Entities", in [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>]).
  | 
      
      
         | 167 | 
          | 
          | 
              * Explicitly setting an encoding in the <code>LSInput</code> overrides
  | 
      
      
         | 168 | 
          | 
          | 
              * any encoding from the protocol. </dd>
  | 
      
      
         | 169 | 
          | 
          | 
              * <dt><code>false</code></dt>
  | 
      
      
         | 170 | 
          | 
          | 
              * <dd>[<em>required</em>] The parser ignores any character set encoding information from
  | 
      
      
         | 171 | 
          | 
          | 
              * higher-level protocols. </dd>
  | 
      
      
         | 172 | 
          | 
          | 
              * </dl></dd>
  | 
      
      
         | 173 | 
          | 
          | 
              * <dt><code>"disallow-doctype"</code></dt>
  | 
      
      
         | 174 | 
          | 
          | 
              * <dd>
  | 
      
      
         | 175 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 176 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 177 | 
          | 
          | 
              * <code>true</code></dt>
  | 
      
      
         | 178 | 
          | 
          | 
              * <dd>[<em>optional</em>] Throw a fatal <b>"doctype-not-allowed"</b> error if a doctype node is found while parsing the document. This is
  | 
      
      
         | 179 | 
          | 
          | 
              * useful when dealing with things like SOAP envelopes where doctype
  | 
      
      
         | 180 | 
          | 
          | 
              * nodes are not allowed. </dd>
  | 
      
      
         | 181 | 
          | 
          | 
              * <dt><code>false</code></dt>
  | 
      
      
         | 182 | 
          | 
          | 
              * <dd>[<em>required</em>] (<em>default</em>) Allow doctype nodes in the document. </dd>
  | 
      
      
         | 183 | 
          | 
          | 
              * </dl></dd>
  | 
      
      
         | 184 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 185 | 
          | 
          | 
              * <code>"ignore-unknown-character-denormalizations"</code></dt>
  | 
      
      
         | 186 | 
          | 
          | 
              * <dd>
  | 
      
      
         | 187 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 188 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 189 | 
          | 
          | 
              * <code>true</code></dt>
  | 
      
      
         | 190 | 
          | 
          | 
              * <dd>[<em>required</em>] (<em>default</em>) If, while verifying full normalization when [<a href='http://www.w3.org/TR/2004/REC-xml11-20040204/'>XML 1.1</a>] is
  | 
      
      
         | 191 | 
          | 
          | 
              * supported, a processor encounters characters for which it cannot
  | 
      
      
         | 192 | 
          | 
          | 
              * determine the normalization properties, then the processor will
  | 
      
      
         | 193 | 
          | 
          | 
              * ignore any possible denormalizations caused by these characters.
  | 
      
      
         | 194 | 
          | 
          | 
              * This parameter is ignored for [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>]. </dd>
  | 
      
      
         | 195 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 196 | 
          | 
          | 
              * <code>false</code></dt>
  | 
      
      
         | 197 | 
          | 
          | 
              * <dd>[<em>optional</em>] Report an fatal <b>"unknown-character-denormalization"</b> error if a character is encountered for which the processor cannot
  | 
      
      
         | 198 | 
          | 
          | 
              * determine the normalization properties. </dd>
  | 
      
      
         | 199 | 
          | 
          | 
              * </dl></dd>
  | 
      
      
         | 200 | 
          | 
          | 
              * <dt><code>"infoset"</code></dt>
  | 
      
      
         | 201 | 
          | 
          | 
              * <dd> See
  | 
      
      
         | 202 | 
          | 
          | 
              * the definition of <code>DOMConfiguration</code> for a description of
  | 
      
      
         | 203 | 
          | 
          | 
              * this parameter. Unlike in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 204 | 
          | 
          | 
              * , this parameter will default to <code>true</code> for
  | 
      
      
         | 205 | 
          | 
          | 
              * <code>LSParser</code>. </dd>
  | 
      
      
         | 206 | 
          | 
          | 
              * <dt><code>"namespaces"</code></dt>
  | 
      
      
         | 207 | 
          | 
          | 
              * <dd>
  | 
      
      
         | 208 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 209 | 
          | 
          | 
              * <dt><code>true</code></dt>
  | 
      
      
         | 210 | 
          | 
          | 
              * <dd>[<em>required</em>] (<em>default</em>) Perform the namespace processing as defined in [<a href='http://www.w3.org/TR/1999/REC-xml-names-19990114/'>XML Namespaces</a>]
  | 
      
      
         | 211 | 
          | 
          | 
              *  and [<a href='http://www.w3.org/TR/2004/REC-xml-names11-20040204/'>XML Namespaces 1.1</a>]
  | 
      
      
         | 212 | 
          | 
          | 
              * . </dd>
  | 
      
      
         | 213 | 
          | 
          | 
              * <dt><code>false</code></dt>
  | 
      
      
         | 214 | 
          | 
          | 
              * <dd>[<em>optional</em>] Do not perform the namespace processing. </dd>
  | 
      
      
         | 215 | 
          | 
          | 
              * </dl></dd>
  | 
      
      
         | 216 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 217 | 
          | 
          | 
              * <code>"resource-resolver"</code></dt>
  | 
      
      
         | 218 | 
          | 
          | 
              * <dd>[<em>required</em>] A reference to a <code>LSResourceResolver</code> object, or null. If
  | 
      
      
         | 219 | 
          | 
          | 
              * the value of this parameter is not null when an external resource
  | 
      
      
         | 220 | 
          | 
          | 
              * (such as an external XML entity or an XML schema location) is
  | 
      
      
         | 221 | 
          | 
          | 
              * encountered, the implementation will request that the
  | 
      
      
         | 222 | 
          | 
          | 
              * <code>LSResourceResolver</code> referenced in this parameter resolves
  | 
      
      
         | 223 | 
          | 
          | 
              * the resource. </dd>
  | 
      
      
         | 224 | 
          | 
          | 
              * <dt><code>"supported-media-types-only"</code></dt>
  | 
      
      
         | 225 | 
          | 
          | 
              * <dd>
  | 
      
      
         | 226 | 
          | 
          | 
              * <dl>
  | 
      
      
         | 227 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 228 | 
          | 
          | 
              * <code>true</code></dt>
  | 
      
      
         | 229 | 
          | 
          | 
              * <dd>[<em>optional</em>] Check that the media type of the parsed resource is a supported media
  | 
      
      
         | 230 | 
          | 
          | 
              * type. If an unsupported media type is encountered, a fatal error of
  | 
      
      
         | 231 | 
          | 
          | 
              * type <b>"unsupported-media-type"</b> will be raised. The media types defined in [<a href='http://www.ietf.org/rfc/rfc3023.txt'>IETF RFC 3023</a>] must always
  | 
      
      
         | 232 | 
          | 
          | 
              * be accepted. </dd>
  | 
      
      
         | 233 | 
          | 
          | 
              * <dt><code>false</code></dt>
  | 
      
      
         | 234 | 
          | 
          | 
              * <dd>[<em>required</em>] (<em>default</em>) Accept any media type. </dd>
  | 
      
      
         | 235 | 
          | 
          | 
              * </dl></dd>
  | 
      
      
         | 236 | 
          | 
          | 
              * <dt><code>"validate"</code></dt>
  | 
      
      
         | 237 | 
          | 
          | 
              * <dd> See the definition of
  | 
      
      
         | 238 | 
          | 
          | 
              * <code>DOMConfiguration</code> for a description of this parameter.
  | 
      
      
         | 239 | 
          | 
          | 
              * Unlike in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 240 | 
          | 
          | 
              * , the processing of the internal subset is always accomplished, even
  | 
      
      
         | 241 | 
          | 
          | 
              * if this parameter is set to <code>false</code>. </dd>
  | 
      
      
         | 242 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 243 | 
          | 
          | 
              * <code>"validate-if-schema"</code></dt>
  | 
      
      
         | 244 | 
          | 
          | 
              * <dd> See the definition of
  | 
      
      
         | 245 | 
          | 
          | 
              * <code>DOMConfiguration</code> for a description of this parameter.
  | 
      
      
         | 246 | 
          | 
          | 
              * Unlike in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 247 | 
          | 
          | 
              * , the processing of the internal subset is always accomplished, even
  | 
      
      
         | 248 | 
          | 
          | 
              * if this parameter is set to <code>false</code>. </dd>
  | 
      
      
         | 249 | 
          | 
          | 
              * <dt>
  | 
      
      
         | 250 | 
          | 
          | 
              * <code>"well-formed"</code></dt>
  | 
      
      
         | 251 | 
          | 
          | 
              * <dd> See the definition of
  | 
      
      
         | 252 | 
          | 
          | 
              * <code>DOMConfiguration</code> for a description of this parameter.
  | 
      
      
         | 253 | 
          | 
          | 
              * Unlike in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 254 | 
          | 
          | 
              * , this parameter cannot be set to <code>false</code>. </dd>
  | 
      
      
         | 255 | 
          | 
          | 
              * </dl>
  | 
      
      
         | 256 | 
          | 
          | 
              */
  | 
      
      
         | 257 | 
          | 
          | 
             public DOMConfiguration getDomConfig();
  | 
      
      
         | 258 | 
          | 
          | 
          
  | 
      
      
         | 259 | 
          | 
          | 
             /**
  | 
      
      
         | 260 | 
          | 
          | 
              *  When a filter is provided, the implementation will call out to the
  | 
      
      
         | 261 | 
          | 
          | 
              * filter as it is constructing the DOM tree structure. The filter can
  | 
      
      
         | 262 | 
          | 
          | 
              * choose to remove elements from the document being constructed, or to
  | 
      
      
         | 263 | 
          | 
          | 
              * terminate the parsing early.
  | 
      
      
         | 264 | 
          | 
          | 
              * <br> The filter is invoked after the operations requested by the
  | 
      
      
         | 265 | 
          | 
          | 
              * <code>DOMConfiguration</code> parameters have been applied. For
  | 
      
      
         | 266 | 
          | 
          | 
              * example, if "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-validate'>
  | 
      
      
         | 267 | 
          | 
          | 
              * validate</a>" is set to <code>true</code>, the validation is done before invoking the
  | 
      
      
         | 268 | 
          | 
          | 
              * filter.
  | 
      
      
         | 269 | 
          | 
          | 
              */
  | 
      
      
         | 270 | 
          | 
          | 
             public LSParserFilter getFilter();
  | 
      
      
         | 271 | 
          | 
          | 
             /**
  | 
      
      
         | 272 | 
          | 
          | 
              *  When a filter is provided, the implementation will call out to the
  | 
      
      
         | 273 | 
          | 
          | 
              * filter as it is constructing the DOM tree structure. The filter can
  | 
      
      
         | 274 | 
          | 
          | 
              * choose to remove elements from the document being constructed, or to
  | 
      
      
         | 275 | 
          | 
          | 
              * terminate the parsing early.
  | 
      
      
         | 276 | 
          | 
          | 
              * <br> The filter is invoked after the operations requested by the
  | 
      
      
         | 277 | 
          | 
          | 
              * <code>DOMConfiguration</code> parameters have been applied. For
  | 
      
      
         | 278 | 
          | 
          | 
              * example, if "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-validate'>
  | 
      
      
         | 279 | 
          | 
          | 
              * validate</a>" is set to <code>true</code>, the validation is done before invoking the
  | 
      
      
         | 280 | 
          | 
          | 
              * filter.
  | 
      
      
         | 281 | 
          | 
          | 
              */
  | 
      
      
         | 282 | 
          | 
          | 
             public void setFilter(LSParserFilter filter);
  | 
      
      
         | 283 | 
          | 
          | 
          
  | 
      
      
         | 284 | 
          | 
          | 
             /**
  | 
      
      
         | 285 | 
          | 
          | 
              *  <code>true</code> if the <code>LSParser</code> is asynchronous,
  | 
      
      
         | 286 | 
          | 
          | 
              * <code>false</code> if it is synchronous.
  | 
      
      
         | 287 | 
          | 
          | 
              */
  | 
      
      
         | 288 | 
          | 
          | 
             public boolean getAsync();
  | 
      
      
         | 289 | 
          | 
          | 
          
  | 
      
      
         | 290 | 
          | 
          | 
             /**
  | 
      
      
         | 291 | 
          | 
          | 
              *  <code>true</code> if the <code>LSParser</code> is currently busy
  | 
      
      
         | 292 | 
          | 
          | 
              * loading a document, otherwise <code>false</code>.
  | 
      
      
         | 293 | 
          | 
          | 
              */
  | 
      
      
         | 294 | 
          | 
          | 
             public boolean getBusy();
  | 
      
      
         | 295 | 
          | 
          | 
          
  | 
      
      
         | 296 | 
          | 
          | 
             /**
  | 
      
      
         | 297 | 
          | 
          | 
              * Parse an XML document from a resource identified by a
  | 
      
      
         | 298 | 
          | 
          | 
              * <code>LSInput</code>.
  | 
      
      
         | 299 | 
          | 
          | 
              * @param input  The <code>LSInput</code> from which the source of the
  | 
      
      
         | 300 | 
          | 
          | 
              *   document is to be read.
  | 
      
      
         | 301 | 
          | 
          | 
              * @return  If the <code>LSParser</code> is a synchronous
  | 
      
      
         | 302 | 
          | 
          | 
              *   <code>LSParser</code>, the newly created and populated
  | 
      
      
         | 303 | 
          | 
          | 
              *   <code>Document</code> is returned. If the <code>LSParser</code> is
  | 
      
      
         | 304 | 
          | 
          | 
              *   asynchronous, <code>null</code> is returned since the document
  | 
      
      
         | 305 | 
          | 
          | 
              *   object may not yet be constructed when this method returns.
  | 
      
      
         | 306 | 
          | 
          | 
              * @exception DOMException
  | 
      
      
         | 307 | 
          | 
          | 
              *    INVALID_STATE_ERR: Raised if the <code>LSParser</code>'s
  | 
      
      
         | 308 | 
          | 
          | 
              *   <code>LSParser.busy</code> attribute is <code>true</code>.
  | 
      
      
         | 309 | 
          | 
          | 
              * @exception LSException
  | 
      
      
         | 310 | 
          | 
          | 
              *    PARSE_ERR: Raised if the <code>LSParser</code> was unable to load
  | 
      
      
         | 311 | 
          | 
          | 
              *   the XML document. DOM applications should attach a
  | 
      
      
         | 312 | 
          | 
          | 
              *   <code>DOMErrorHandler</code> using the parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler'>
  | 
      
      
         | 313 | 
          | 
          | 
              *   error-handler</a>" if they wish to get details on the error.
  | 
      
      
         | 314 | 
          | 
          | 
              */
  | 
      
      
         | 315 | 
          | 
          | 
             public Document parse(LSInput input)
  | 
      
      
         | 316 | 
          | 
          | 
                                   throws DOMException, LSException;
  | 
      
      
         | 317 | 
          | 
          | 
          
  | 
      
      
         | 318 | 
          | 
          | 
             /**
  | 
      
      
         | 319 | 
          | 
          | 
              *  Parse an XML document from a location identified by a URI reference [<a href='http://www.ietf.org/rfc/rfc2396.txt'>IETF RFC 2396</a>]. If the URI
  | 
      
      
         | 320 | 
          | 
          | 
              * contains a fragment identifier (see section 4.1 in [<a href='http://www.ietf.org/rfc/rfc2396.txt'>IETF RFC 2396</a>]), the
  | 
      
      
         | 321 | 
          | 
          | 
              * behavior is not defined by this specification, future versions of
  | 
      
      
         | 322 | 
          | 
          | 
              * this specification may define the behavior.
  | 
      
      
         | 323 | 
          | 
          | 
              * @param uri The location of the XML document to be read.
  | 
      
      
         | 324 | 
          | 
          | 
              * @return  If the <code>LSParser</code> is a synchronous
  | 
      
      
         | 325 | 
          | 
          | 
              *   <code>LSParser</code>, the newly created and populated
  | 
      
      
         | 326 | 
          | 
          | 
              *   <code>Document</code> is returned, or <code>null</code> if an error
  | 
      
      
         | 327 | 
          | 
          | 
              *   occured. If the <code>LSParser</code> is asynchronous,
  | 
      
      
         | 328 | 
          | 
          | 
              *   <code>null</code> is returned since the document object may not yet
  | 
      
      
         | 329 | 
          | 
          | 
              *   be constructed when this method returns.
  | 
      
      
         | 330 | 
          | 
          | 
              * @exception DOMException
  | 
      
      
         | 331 | 
          | 
          | 
              *    INVALID_STATE_ERR: Raised if the <code>LSParser.busy</code>
  | 
      
      
         | 332 | 
          | 
          | 
              *   attribute is <code>true</code>.
  | 
      
      
         | 333 | 
          | 
          | 
              * @exception LSException
  | 
      
      
         | 334 | 
          | 
          | 
              *    PARSE_ERR: Raised if the <code>LSParser</code> was unable to load
  | 
      
      
         | 335 | 
          | 
          | 
              *   the XML document. DOM applications should attach a
  | 
      
      
         | 336 | 
          | 
          | 
              *   <code>DOMErrorHandler</code> using the parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler'>
  | 
      
      
         | 337 | 
          | 
          | 
              *   error-handler</a>" if they wish to get details on the error.
  | 
      
      
         | 338 | 
          | 
          | 
              */
  | 
      
      
         | 339 | 
          | 
          | 
             public Document parseURI(String uri)
  | 
      
      
         | 340 | 
          | 
          | 
                                      throws DOMException, LSException;
  | 
      
      
         | 341 | 
          | 
          | 
          
  | 
      
      
         | 342 | 
          | 
          | 
             // ACTION_TYPES
  | 
      
      
         | 343 | 
          | 
          | 
             /**
  | 
      
      
         | 344 | 
          | 
          | 
              *  Append the result of the parse operation as children of the context
  | 
      
      
         | 345 | 
          | 
          | 
              * node. For this action to work, the context node must be an
  | 
      
      
         | 346 | 
          | 
          | 
              * <code>Element</code> or a <code>DocumentFragment</code>.
  | 
      
      
         | 347 | 
          | 
          | 
              */
  | 
      
      
         | 348 | 
          | 
          | 
             public static final short ACTION_APPEND_AS_CHILDREN = 1;
  | 
      
      
         | 349 | 
          | 
          | 
             /**
  | 
      
      
         | 350 | 
          | 
          | 
              *  Replace all the children of the context node with the result of the
  | 
      
      
         | 351 | 
          | 
          | 
              * parse operation. For this action to work, the context node must be an
  | 
      
      
         | 352 | 
          | 
          | 
              * <code>Element</code>, a <code>Document</code>, or a
  | 
      
      
         | 353 | 
          | 
          | 
              * <code>DocumentFragment</code>.
  | 
      
      
         | 354 | 
          | 
          | 
              */
  | 
      
      
         | 355 | 
          | 
          | 
             public static final short ACTION_REPLACE_CHILDREN   = 2;
  | 
      
      
         | 356 | 
          | 
          | 
             /**
  | 
      
      
         | 357 | 
          | 
          | 
              *  Insert the result of the parse operation as the immediately preceding
  | 
      
      
         | 358 | 
          | 
          | 
              * sibling of the context node. For this action to work the context
  | 
      
      
         | 359 | 
          | 
          | 
              * node's parent must be an <code>Element</code> or a
  | 
      
      
         | 360 | 
          | 
          | 
              * <code>DocumentFragment</code>.
  | 
      
      
         | 361 | 
          | 
          | 
              */
  | 
      
      
         | 362 | 
          | 
          | 
             public static final short ACTION_INSERT_BEFORE      = 3;
  | 
      
      
         | 363 | 
          | 
          | 
             /**
  | 
      
      
         | 364 | 
          | 
          | 
              *  Insert the result of the parse operation as the immediately following
  | 
      
      
         | 365 | 
          | 
          | 
              * sibling of the context node. For this action to work the context
  | 
      
      
         | 366 | 
          | 
          | 
              * node's parent must be an <code>Element</code> or a
  | 
      
      
         | 367 | 
          | 
          | 
              * <code>DocumentFragment</code>.
  | 
      
      
         | 368 | 
          | 
          | 
              */
  | 
      
      
         | 369 | 
          | 
          | 
             public static final short ACTION_INSERT_AFTER       = 4;
  | 
      
      
         | 370 | 
          | 
          | 
             /**
  | 
      
      
         | 371 | 
          | 
          | 
              *  Replace the context node with the result of the parse operation. For
  | 
      
      
         | 372 | 
          | 
          | 
              * this action to work, the context node must have a parent, and the
  | 
      
      
         | 373 | 
          | 
          | 
              * parent must be an <code>Element</code> or a
  | 
      
      
         | 374 | 
          | 
          | 
              * <code>DocumentFragment</code>.
  | 
      
      
         | 375 | 
          | 
          | 
              */
  | 
      
      
         | 376 | 
          | 
          | 
             public static final short ACTION_REPLACE            = 5;
  | 
      
      
         | 377 | 
          | 
          | 
          
  | 
      
      
         | 378 | 
          | 
          | 
             /**
  | 
      
      
         | 379 | 
          | 
          | 
              *  Parse an XML fragment from a resource identified by a
  | 
      
      
         | 380 | 
          | 
          | 
              * <code>LSInput</code> and insert the content into an existing document
  | 
      
      
         | 381 | 
          | 
          | 
              * at the position specified with the <code>context</code> and
  | 
      
      
         | 382 | 
          | 
          | 
              * <code>action</code> arguments. When parsing the input stream, the
  | 
      
      
         | 383 | 
          | 
          | 
              * context node (or its parent, depending on where the result will be
  | 
      
      
         | 384 | 
          | 
          | 
              * inserted) is used for resolving unbound namespace prefixes. The
  | 
      
      
         | 385 | 
          | 
          | 
              * context node's <code>ownerDocument</code> node (or the node itself if
  | 
      
      
         | 386 | 
          | 
          | 
              * the node of type <code>DOCUMENT_NODE</code>) is used to resolve
  | 
      
      
         | 387 | 
          | 
          | 
              * default attributes and entity references.
  | 
      
      
         | 388 | 
          | 
          | 
              * <br> As the new data is inserted into the document, at least one
  | 
      
      
         | 389 | 
          | 
          | 
              * mutation event is fired per new immediate child or sibling of the
  | 
      
      
         | 390 | 
          | 
          | 
              * context node.
  | 
      
      
         | 391 | 
          | 
          | 
              * <br> If the context node is a <code>Document</code> node and the action
  | 
      
      
         | 392 | 
          | 
          | 
              * is <code>ACTION_REPLACE_CHILDREN</code>, then the document that is
  | 
      
      
         | 393 | 
          | 
          | 
              * passed as the context node will be changed such that its
  | 
      
      
         | 394 | 
          | 
          | 
              * <code>xmlEncoding</code>, <code>documentURI</code>,
  | 
      
      
         | 395 | 
          | 
          | 
              * <code>xmlVersion</code>, <code>inputEncoding</code>,
  | 
      
      
         | 396 | 
          | 
          | 
              * <code>xmlStandalone</code>, and all other such attributes are set to
  | 
      
      
         | 397 | 
          | 
          | 
              * what they would be set to if the input source was parsed using
  | 
      
      
         | 398 | 
          | 
          | 
              * <code>LSParser.parse()</code>.
  | 
      
      
         | 399 | 
          | 
          | 
              * <br> This method is always synchronous, even if the
  | 
      
      
         | 400 | 
          | 
          | 
              * <code>LSParser</code> is asynchronous (<code>LSParser.async</code> is
  | 
      
      
         | 401 | 
          | 
          | 
              * <code>true</code>).
  | 
      
      
         | 402 | 
          | 
          | 
              * <br> If an error occurs while parsing, the caller is notified through
  | 
      
      
         | 403 | 
          | 
          | 
              * the <code>ErrorHandler</code> instance associated with the "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler'>
  | 
      
      
         | 404 | 
          | 
          | 
              * error-handler</a>" parameter of the <code>DOMConfiguration</code>.
  | 
      
      
         | 405 | 
          | 
          | 
              * <br> When calling <code>parseWithContext</code>, the values of the
  | 
      
      
         | 406 | 
          | 
          | 
              * following configuration parameters will be ignored and their default
  | 
      
      
         | 407 | 
          | 
          | 
              * values will always be used instead: "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-validate'>
  | 
      
      
         | 408 | 
          | 
          | 
              * validate</a>", "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-validate-if-schema'>
  | 
      
      
         | 409 | 
          | 
          | 
              * validate-if-schema</a>", and "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-element-content-whitespace'>
  | 
      
      
         | 410 | 
          | 
          | 
              * element-content-whitespace</a>". Other parameters will be treated normally, and the parser is expected
  | 
      
      
         | 411 | 
          | 
          | 
              * to call the <code>LSParserFilter</code> just as if a whole document
  | 
      
      
         | 412 | 
          | 
          | 
              * was parsed.
  | 
      
      
         | 413 | 
          | 
          | 
              * @param input  The <code>LSInput</code> from which the source document
  | 
      
      
         | 414 | 
          | 
          | 
              *   is to be read. The source document must be an XML fragment, i.e.
  | 
      
      
         | 415 | 
          | 
          | 
              *   anything except a complete XML document (except in the case where
  | 
      
      
         | 416 | 
          | 
          | 
              *   the context node of type <code>DOCUMENT_NODE</code>, and the action
  | 
      
      
         | 417 | 
          | 
          | 
              *   is <code>ACTION_REPLACE_CHILDREN</code>), a DOCTYPE (internal
  | 
      
      
         | 418 | 
          | 
          | 
              *   subset), entity declaration(s), notation declaration(s), or XML or
  | 
      
      
         | 419 | 
          | 
          | 
              *   text declaration(s).
  | 
      
      
         | 420 | 
          | 
          | 
              * @param contextArg  The node that is used as the context for the data
  | 
      
      
         | 421 | 
          | 
          | 
              *   that is being parsed. This node must be a <code>Document</code>
  | 
      
      
         | 422 | 
          | 
          | 
              *   node, a <code>DocumentFragment</code> node, or a node of a type
  | 
      
      
         | 423 | 
          | 
          | 
              *   that is allowed as a child of an <code>Element</code> node, e.g. it
  | 
      
      
         | 424 | 
          | 
          | 
              *   cannot be an <code>Attribute</code> node.
  | 
      
      
         | 425 | 
          | 
          | 
              * @param action  This parameter describes which action should be taken
  | 
      
      
         | 426 | 
          | 
          | 
              *   between the new set of nodes being inserted and the existing
  | 
      
      
         | 427 | 
          | 
          | 
              *   children of the context node. The set of possible actions is
  | 
      
      
         | 428 | 
          | 
          | 
              *   defined in <code>ACTION_TYPES</code> above.
  | 
      
      
         | 429 | 
          | 
          | 
              * @return  Return the node that is the result of the parse operation. If
  | 
      
      
         | 430 | 
          | 
          | 
              *   the result is more than one top-level node, the first one is
  | 
      
      
         | 431 | 
          | 
          | 
              *   returned.
  | 
      
      
         | 432 | 
          | 
          | 
              * @exception DOMException
  | 
      
      
         | 433 | 
          | 
          | 
              *   HIERARCHY_REQUEST_ERR: Raised if the content cannot replace, be
  | 
      
      
         | 434 | 
          | 
          | 
              *   inserted before, after, or as a child of the context node (see also
  | 
      
      
         | 435 | 
          | 
          | 
              *   <code>Node.insertBefore</code> or <code>Node.replaceChild</code> in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>DOM Level 3 Core</a>]
  | 
      
      
         | 436 | 
          | 
          | 
              *   ).
  | 
      
      
         | 437 | 
          | 
          | 
              *   <br> NOT_SUPPORTED_ERR: Raised if the <code>LSParser</code> doesn't
  | 
      
      
         | 438 | 
          | 
          | 
              *   support this method, or if the context node is of type
  | 
      
      
         | 439 | 
          | 
          | 
              *   <code>Document</code> and the DOM implementation doesn't support
  | 
      
      
         | 440 | 
          | 
          | 
              *   the replacement of the <code>DocumentType</code> child or
  | 
      
      
         | 441 | 
          | 
          | 
              *   <code>Element</code> child.
  | 
      
      
         | 442 | 
          | 
          | 
              *   <br> NO_MODIFICATION_ALLOWED_ERR: Raised if the context node is a
  | 
      
      
         | 443 | 
          | 
          | 
              *   read only node and the content is being appended to its child list,
  | 
      
      
         | 444 | 
          | 
          | 
              *   or if the parent node of the context node is read only node and the
  | 
      
      
         | 445 | 
          | 
          | 
              *   content is being inserted in its child list.
  | 
      
      
         | 446 | 
          | 
          | 
              *   <br> INVALID_STATE_ERR: Raised if the <code>LSParser.busy</code>
  | 
      
      
         | 447 | 
          | 
          | 
              *   attribute is <code>true</code>.
  | 
      
      
         | 448 | 
          | 
          | 
              * @exception LSException
  | 
      
      
         | 449 | 
          | 
          | 
              *    PARSE_ERR: Raised if the <code>LSParser</code> was unable to load
  | 
      
      
         | 450 | 
          | 
          | 
              *   the XML fragment. DOM applications should attach a
  | 
      
      
         | 451 | 
          | 
          | 
              *   <code>DOMErrorHandler</code> using the parameter "<a href='http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler'>
  | 
      
      
         | 452 | 
          | 
          | 
              *   error-handler</a>" if they wish to get details on the error.
  | 
      
      
         | 453 | 
          | 
          | 
              */
  | 
      
      
         | 454 | 
          | 
          | 
             public Node parseWithContext(LSInput input,
  | 
      
      
         | 455 | 
          | 
          | 
                                          Node contextArg,
  | 
      
      
         | 456 | 
          | 
          | 
                                          short action)
  | 
      
      
         | 457 | 
          | 
          | 
                                          throws DOMException, LSException;
  | 
      
      
         | 458 | 
          | 
          | 
          
  | 
      
      
         | 459 | 
          | 
          | 
             /**
  | 
      
      
         | 460 | 
          | 
          | 
              *  Abort the loading of the document that is currently being loaded by
  | 
      
      
         | 461 | 
          | 
          | 
              * the <code>LSParser</code>. If the <code>LSParser</code> is currently
  | 
      
      
         | 462 | 
          | 
          | 
              * not busy, a call to this method does nothing.
  | 
      
      
         | 463 | 
          | 
          | 
              */
  | 
      
      
         | 464 | 
          | 
          | 
             public void abort();
  | 
      
      
         | 465 | 
          | 
          | 
          
  | 
      
      
         | 466 | 
          | 
          | 
         }
  |