[106892] Incorrect copyrights in some of the w3c Java files?
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/COPYRIGHT.html b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/COPYRIGHT.html
index 4c77b68..1d48a66 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/COPYRIGHT.html
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/COPYRIGHT.html
@@ -1,90 +1,77 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html>
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
-    <title>W3C IPR SOFTWARE NOTICE</title>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+<title>W3C IPR SOFTWARE NOTICE</title>
 <style type="text/css">
 <!--
 html, body { background: #fff; color: #000; } /* body for Windows IE3 */
 -->
 </style>
-  </head>
-  <body>
-    <h1>
-      W3C SOFTWARE NOTICE AND LICENSE
-    </h1>
-    <h3>
-      Copyright &copy; 2004 <a href="http://www.w3.org/">World Wide Web
-      Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
-      Institute of Technology</a>, <a
-      href="http://www.ercim.org/">European Research Consortium for
-      Informatics and Mathematics</a>, <a
-      href="http://www.keio.ac.jp/">Keio University</a>). All Rights
-      Reserved.
-    </h3>
-    <p>
-      The DOM bindings are published under the W3C Software Copyright Notice
-      and License. The software license requires "Notice of any changes or
-      modifications to the W3C files, including the date changes were made."
-      Consequently, modified versions of the DOM bindings must document that
-      they do not conform to the W3C standard; in the case of the IDL
-      definitions, the pragma prefix can no longer be 'w3c.org'; in the case of
-      the Java language binding, the package names can no longer be in the
-      'org.w3c' package.
-    </p>
-    <p>
-      <b>Note:</b> The original version of the W3C Software Copyright Notice
-      and License could be found at <a
-      href='http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231'>http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231</a>
-    </p>
-    <p>
-      This work (and included software, documentation such as READMEs,
-      or other related items) is being provided by the copyright holders
-      under the following license. By obtaining, using and/or copying
-      this work, you (the licensee) agree that you have read,
-      understood, and will comply with the following terms and
-      conditions.
-    </p>
+</head>
+<body>
+<h1>W3C SOFTWARE NOTICE AND LICENSE</h1>
+<h3>Copyright &copy; 2004 <a href="http://www.w3.org/">World Wide Web
+Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+Institute of Technology</a>, <a href="http://www.ercim.org/">European
+Research Consortium for Informatics and Mathematics</a>, <a
+	href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+Reserved.</h3>
+<p>The DOM bindings are published under the W3C Software Copyright
+Notice and License. The software license requires "Notice of any changes
+or modifications to the W3C files, including the date changes were
+made." Consequently, modified versions of the DOM bindings must document
+that they do not conform to the W3C standard; in the case of the IDL
+definitions, the pragma prefix can no longer be 'w3c.org'; in the case
+of the Java language binding, the package names can no longer be in the
+'org.w3c' package.</p>
+<p><b>Note:</b> The original version of the W3C Software Copyright
+Notice and License could be found at <a
+	href='http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231'>http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231</a>
+</p>
+<p>This work (and included software, documentation such as READMEs, or
+other related items) is being provided by the copyright holders under
+the following license. By obtaining, using and/or copying this work, you
+(the licensee) agree that you have read, understood, and will comply
+with the following terms and conditions.</p>
 
-    <p>
-      Permission to copy, modify, and distribute this software and its
-      documentation, with or without modification,&nbsp;for any purpose
-      and without fee or royalty is hereby granted, provided that you
-      include the following on ALL copies of the software and
-      documentation or portions thereof, including modifications:
-    </p>
-    <ol>
-      <li>The full text of this NOTICE in a location viewable to users
-      of the redistributed or derivative work.</li>
+<p>Permission to copy, modify, and distribute this software and its
+documentation, with or without modification,&nbsp;for any purpose and
+without fee or royalty is hereby granted, provided that you include the
+following on ALL copies of the software and documentation or portions
+thereof, including modifications:</p>
+<ol>
+	<li>The full text of this NOTICE in a location viewable to users of the
+	redistributed or derivative work.</li>
 
-      <li>Any pre-existing intellectual property disclaimers, notices,
-      or terms and conditions. If none exist, the <a
-      href="http://www.w3.org/Consortium/Legal/2002/copyright-software-short-notice-20021231.html">W3C
-      Software Short Notice</a> should be included (hypertext is
-      preferred, text is permitted) within the body of any redistributed
-      or derivative code.</li>
-      
-      <li>Notice of any changes or modifications to the files, including
-      the date changes were made. (We recommend you provide URIs to the
-      location from which the code is derived.)</li>
-    </ol>
+	<li>Any pre-existing intellectual property disclaimers, notices, or
+	terms and conditions. If none exist, the <a
+		href="http://www.w3.org/Consortium/Legal/2002/copyright-software-short-notice-20021231.html">W3C
+	Software Short Notice</a> should be included (hypertext is preferred,
+	text is permitted) within the body of any redistributed or derivative
+	code.</li>
 
-    <p>THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND
-    COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-    IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY
-    OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
-    SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS,
-    COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.</p>
+	<li>Notice of any changes or modifications to the files, including the
+	date changes were made. (We recommend you provide URIs to the location
+	from which the code is derived.)</li>
+</ol>
 
-    <p>COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT,
-    SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE
-    SOFTWARE OR DOCUMENTATION.</p>
+<p>THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
+DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+TRADEMARKS OR OTHER RIGHTS.</p>
 
-    <p>The name and trademarks of copyright holders may NOT be used in
-    advertising or publicity pertaining to the software without
-    specific, written prior permission. Title to copyright in this
-    software and any associated documentation will at all times remain
-    with copyright holders.</p>
-  </body>
+<p>COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT,
+SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE
+OR DOCUMENTATION.</p>
+
+<p>The name and trademarks of copyright holders may NOT be used in
+advertising or publicity pertaining to the software without specific,
+written prior permission. Title to copyright in this software and any
+associated documentation will at all times remain with copyright
+holders.</p>
+</body>
 </html>
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMConfiguration.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMConfiguration.java
index ce64f45..7cce160 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMConfiguration.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMConfiguration.java
@@ -1,12 +1,413 @@
+/*
+ * Copyright (c) 2004 World Wide Web Consortium,
+ *
+ * (Massachusetts Institute of Technology, European Research Consortium for
+ * Informatics and Mathematics, Keio University). All Rights Reserved. This
+ * work is distributed under the W3C(r) Software License [1] in the hope that
+ * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+ */
+
 package org.w3c.dom;
 
+/**
+ *  The <code>DOMConfiguration</code> interface represents the configuration 
+ * of a document and maintains a table of recognized parameters. Using the 
+ * configuration, it is possible to change 
+ * <code>Document.normalizeDocument()</code> behavior, such as replacing the 
+ * <code>CDATASection</code> nodes with <code>Text</code> nodes or 
+ * specifying the type of the schema that must be used when the validation 
+ * of the <code>Document</code> is requested. <code>DOMConfiguration</code> 
+ * objects are also used in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407'>DOM Level 3 Load and Save</a>]
+ *  in the <code>DOMParser</code> and <code>DOMSerializer</code> interfaces. 
+ * <p> The parameter names used by the <code>DOMConfiguration</code> object 
+ * are defined throughout the DOM Level 3 specifications. Names are 
+ * case-insensitive. To avoid possible conflicts, as a convention, names 
+ * referring to parameters defined outside the DOM specification should be 
+ * made unique. Because parameters are exposed as properties in the , names 
+ * are recommended to follow the section 5.16 Identifiers of [Unicode] with the addition of the character '-' (HYPHEN-MINUS) but it is not 
+ * enforced by the DOM implementation. DOM Level 3 Core Implementations are 
+ * required to recognize all parameters defined in this specification. Some 
+ * parameter values may also be required to be supported by the 
+ * implementation. Refer to the definition of the parameter to know if a 
+ * value must be supported or not. 
+ * <p ><b>Note:</b>  Parameters are similar to features and properties used in 
+ * SAX2 [<a href='http://www.saxproject.org/'>SAX</a>]. 
+ * <p> The following list of parameters defined in the DOM: 
+ * <dl>
+ * <dt>
+ * <code>"canonical-form"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>] Canonicalize the document according to the rules specified in [<a href='http://www.w3.org/TR/2001/REC-xml-c14n-20010315'>Canonical XML</a>], 
+ * such as removing the <code>DocumentType</code> node (if any) from the 
+ * tree, or removing superfluous namespace declarations from each element. 
+ * Note that this is limited to what can be represented in the DOM; in 
+ * particular, there is no way to specify the order of the attributes in the 
+ * DOM. In addition,  Setting this parameter to <code>true</code> will also 
+ * set the state of the parameters listed below. Later changes to the state 
+ * of one of those parameters will revert "canonical-form" back to 
+ * <code>false</code>. Parameters set to <code>false</code>: "entities", "
+ * normalize-characters", "cdata-sections". Parameters set to 
+ * <code>true</code>: "namespaces", "namespace-declarations", "well-formed", 
+ * "element-content-whitespace". Other parameters are not changed unless 
+ * explicitly specified in the description of the parameters.</dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Do not canonicalize the document.</dd>
+ * </dl></dd>
+ * <dt><code>"cdata-sections"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Keep <code>CDATASection</code> nodes in the document.</dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>]Transform <code>CDATASection</code> nodes in the document into 
+ * <code>Text</code> nodes. The new <code>Text</code> node is then combined 
+ * with any adjacent <code>Text</code> node.</dd>
+ * </dl></dd>
+ * <dt>
+ * <code>"check-character-normalization"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>] Check if the characters in the document are <a href='http://www.w3.org/TR/2004/REC-xml11-20040204/#dt-fullnorm'>fully 
+ * normalized</a>, as defined in appendix B of [<a href='http://www.w3.org/TR/2004/REC-xml11-20040204/'>XML 1.1</a>]. When a 
+ * sequence of characters is encountered that fails normalization checking, 
+ * an error with the <code>DOMError.type</code> equals to 
+ * "check-character-normalization-failure" is issued. </dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Do not check if characters are normalized.</dd>
+ * </dl></dd>
+ * <dt><code>"comments"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Keep <code>Comment</code> nodes in the document.</dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>]Discard <code>Comment</code> nodes in the document.</dd>
+ * </dl></dd>
+ * <dt>
+ * <code>"datatype-normalization"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>] Expose schema normalized values in the tree, such as <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#key-nv'>XML 
+ * Schema normalized values</a> in the case of XML Schema. Since this parameter requires to have schema 
+ * information, the "validate" parameter will also be set to 
+ * <code>true</code>. Having this parameter activated when "validate" is 
+ * <code>false</code> has no effect and no schema-normalization will happen. 
+ * <p ><b>Note:</b>  Since the document contains the result of the XML 1.0 
+ * processing, this parameter does not apply to attribute value 
+ * normalization as defined in section 3.3.3 of [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>] and is only 
+ * meant for schema languages other than Document Type Definition (DTD). </dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) Do not perform schema normalization on the tree. </dd>
+ * </dl></dd>
+ * <dt>
+ * <code>"element-content-whitespace"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Keep all whitespaces in the document.</dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>optional</em>] Discard all <code>Text</code> nodes that contain whitespaces in element 
+ * content, as described in <a href='http://www.w3.org/TR/2004/REC-xml-infoset-20040204#infoitem.character'>
+ * [element content whitespace]</a>. The implementation is expected to use the attribute 
+ * <code>Text.isElementContentWhitespace</code> to determine if a 
+ * <code>Text</code> node should be discarded or not.</dd>
+ * </dl></dd>
+ * <dt><code>"entities"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Keep <code>EntityReference</code> nodes in the document.</dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>required</em>] Remove all <code>EntityReference</code> nodes from the document, 
+ * putting the entity expansions directly in their place. <code>Text</code> 
+ * nodes are normalized, as defined in <code>Node.normalize</code>. Only <a href='http://www.w3.org/TR/2004/REC-xml-infoset-20040204/#infoitem.rse'>
+ * unexpanded entity references</a> are kept in the document. </dd>
+ * </dl>
+ * <p ><b>Note:</b>  This parameter does not affect <code>Entity</code> nodes. </dd>
+ * <dt>
+ * <code>"error-handler"</code></dt>
+ * <dd>[<em>required</em>] Contains a <code>DOMErrorHandler</code> object. If an error is 
+ * encountered in the document, the implementation will call back the 
+ * <code>DOMErrorHandler</code> registered using this parameter. The 
+ * implementation may provide a default <code>DOMErrorHandler</code> object. 
+ *  When called, <code>DOMError.relatedData</code> will contain the closest 
+ * node to where the error occurred. If the implementation is unable to 
+ * determine the node where the error occurs, 
+ * <code>DOMError.relatedData</code> will contain the <code>Document</code> 
+ * node. Mutations to the document from within an error handler will result 
+ * in implementation dependent behavior. </dd>
+ * <dt><code>"infoset"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>]Keep in the document the information defined in the XML Information Set [<a href='http://www.w3.org/TR/2004/REC-xml-infoset-20040204/'>XML Information Set</a>]
+ * .This forces the following parameters to <code>false</code>: "
+ * validate-if-schema", "entities", "datatype-normalization", "cdata-sections
+ * ".This forces the following parameters to <code>true</code>: "
+ * namespace-declarations", "well-formed", "element-content-whitespace", "
+ * comments", "namespaces".Other parameters are not changed unless 
+ * explicitly specified in the description of the parameters. Note that 
+ * querying this parameter with <code>getParameter</code> returns 
+ * <code>true</code> only if the individual parameters specified above are 
+ * appropriately set.</dd>
+ * <dt><code>false</code></dt>
+ * <dd>Setting <code>infoset</code> to 
+ * <code>false</code> has no effect.</dd>
+ * </dl></dd>
+ * <dt><code>"namespaces"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) Perform the namespace processing as defined in . </dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>optional</em>] Do not perform the namespace processing. </dd>
+ * </dl></dd>
+ * <dt>
+ * <code>"namespace-declarations"</code></dt>
+ * <dd> This parameter has no effect if the 
+ * parameter "namespaces" is set to <code>false</code>. 
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) Include namespace declaration attributes, specified or defaulted from 
+ * the schema, in the document. See also the sections "Declaring Namespaces" 
+ * in [<a href='http://www.w3.org/TR/1999/REC-xml-names-19990114/'>XML Namespaces</a>]
+ *  and [<a href='http://www.w3.org/TR/2004/REC-xml-names11-20040204/'>XML Namespaces 1.1</a>]
+ * .</dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>]Discard all namespace declaration attributes. The namespace prefixes (
+ * <code>Node.prefix</code>) are retained even if this parameter is set to 
+ * <code>false</code>.</dd>
+ * </dl></dd>
+ * <dt><code>"normalize-characters"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>] <a href='http://www.w3.org/TR/2004/REC-xml11-20040204/#dt-fullnorm'>Fully 
+ * normalized</a> the characters in the document as defined in appendix B of [<a href='http://www.w3.org/TR/2004/REC-xml11-20040204/'>XML 1.1</a>]. </dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Do not perform character normalization.</dd>
+ * </dl></dd>
+ * <dt><code>"schema-location"</code></dt>
+ * <dd>[<em>optional</em>] Represent a <code>DOMString</code> object containing a list of URIs, 
+ * separated by whitespaces (characters matching the <a href='http://www.w3.org/TR/2004/REC-xml-20040204#NT-S'>nonterminal 
+ * production S</a> defined in section 2.3 [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>]), that 
+ * represents the schemas against which validation should occur, i.e. the 
+ * current schema. The types of schemas referenced in this list must match 
+ * the type specified with <code>schema-type</code>, otherwise the behavior 
+ * of an implementation is undefined.  The schemas specified using this 
+ * property take precedence to the schema information specified in the 
+ * document itself. For namespace aware schema, if a schema specified using 
+ * this property and a schema specified in the document instance (i.e. using 
+ * the <code>schemaLocation</code> attribute) in a schema document (i.e. 
+ * using schema <code>import</code> mechanisms) share the same 
+ * <code>targetNamespace</code>, the schema specified by the user using this 
+ * property will be used. If two schemas specified using this property share 
+ * the same <code>targetNamespace</code> or have no namespace, the behavior 
+ * is implementation dependent.  If no location has been provided, this 
+ * parameter is <code>null</code>. 
+ * <p ><b>Note:</b>  The <code>"schema-location"</code> parameter is ignored 
+ * unless the "schema-type" parameter value is set. It is strongly 
+ * recommended that <code>Document.documentURI</code> will be set so that an 
+ * implementation can successfully resolve any external entities referenced. </dd>
+ * <dt>
+ * <code>"schema-type"</code></dt>
+ * <dd>[<em>optional</em>] Represent a <code>DOMString</code> object containing an absolute URI 
+ * and representing the type of the schema language used to validate a 
+ * document against. Note that no lexical checking is done on the absolute 
+ * URI.  If this parameter is not set, a default value may be provided by 
+ * the implementation, based on the schema languages supported and on the 
+ * schema language used at load time. If no value is provided, this 
+ * parameter is <code>null</code>. 
+ * <p ><b>Note:</b>  For XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+ * , applications must use the value 
+ * <code>"http://www.w3.org/2001/XMLSchema"</code>. For XML DTD [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>], 
+ * applications must use the value 
+ * <code>"http://www.w3.org/TR/REC-xml"</code>. Other schema languages are 
+ * outside the scope of the W3C and therefore should recommend an absolute 
+ * URI in order to use this method. </dd>
+ * <dt><code>"split-cdata-sections"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt>
+ * <code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>)Split CDATA sections containing the CDATA section termination marker 
+ * ']]&gt;'. When a CDATA section is split a warning is issued with a 
+ * <code>DOMError.type</code> equals to 
+ * <code>"cdata-sections-splitted"</code> and 
+ * <code>DOMError.relatedData</code> equals to the first 
+ * <code>CDATASection</code> node in document order resulting from the split.</dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>required</em>]Signal an error if a <code>CDATASection</code> contains an 
+ * unrepresentable character.</dd>
+ * </dl></dd>
+ * <dt><code>"validate"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>] Require the validation against a schema (i.e. XML schema, DTD, any 
+ * other type or representation of schema) of the document as it is being 
+ * normalized as defined by [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>]. If 
+ * validation errors are found, or no schema was found, the error handler is 
+ * notified. Schema-normalized values will not be exposed according to the 
+ * schema in used unless the parameter "datatype-normalization" is 
+ * <code>true</code>.  This parameter will reevaluate: 
+ * <ul>
+ * <li> Attribute nodes with 
+ * <code>Attr.specified</code> equals to <code>false</code>, as specified in 
+ * the description of the <code>Attr</code> interface; 
+ * </li>
+ * <li> The value of the 
+ * attribute <code>Text.isElementContentWhitespace</code> for all 
+ * <code>Text</code> nodes; 
+ * </li>
+ * <li> The value of the attribute 
+ * <code>Attr.isId</code> for all <code>Attr</code> nodes; 
+ * </li>
+ * <li> The attributes 
+ * <code>Element.schemaTypeInfo</code> and <code>Attr.schemaTypeInfo</code>. 
+ * </li>
+ * </ul>
+ * <p ><b>Note:</b>  "validate-if-schema" and "validate" are mutually 
+ * exclusive, setting one of them to <code>true</code> will set the other 
+ * one to <code>false</code>. Applications should also consider setting the 
+ * parameter "well-formed" to <code>true</code>, which is the default for 
+ * that option, when validating the document. </dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) Do not accomplish schema processing, including the internal subset 
+ * processing. Default attribute values information are kept. Note that 
+ * validation might still happen if "validate-if-schema" is <code>true</code>
+ * . </dd>
+ * </dl></dd>
+ * <dt><code>"validate-if-schema"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>optional</em>]Enable validation only if a declaration for the document element can be 
+ * found in a schema (independently of where it is found, i.e. XML schema, 
+ * DTD, or any other type or representation of schema). If validation is 
+ * enabled, this parameter has the same behavior as the parameter "validate" 
+ * set to <code>true</code>. 
+ * <p ><b>Note:</b>  "validate-if-schema" and "validate" are mutually 
+ * exclusive, setting one of them to <code>true</code> will set the other 
+ * one to <code>false</code>. </dd>
+ * <dt><code>false</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) No schema processing should be performed if the document has a schema, 
+ * including internal subset processing. Default attribute values 
+ * information are kept. Note that validation must still happen if "validate
+ * " is <code>true</code>. </dd>
+ * </dl></dd>
+ * <dt><code>"well-formed"</code></dt>
+ * <dd>
+ * <dl>
+ * <dt><code>true</code></dt>
+ * <dd>[<em>required</em>] (<em>default</em>) Check if all nodes are XML well formed according to the XML version in 
+ * use in <code>Document.xmlVersion</code>: 
+ * <ul>
+ * <li> check if the attribute 
+ * <code>Node.nodeName</code> contains invalid characters according to its 
+ * node type and generate a <code>DOMError</code> of type 
+ * <code>"wf-invalid-character-in-node-name"</code>, with a 
+ * <code>DOMError.SEVERITY_ERROR</code> severity, if necessary; 
+ * </li>
+ * <li> check if 
+ * the text content inside <code>Attr</code>, <code>Element</code>, 
+ * <code>Comment</code>, <code>Text</code>, <code>CDATASection</code> nodes 
+ * for invalid characters and generate a <code>DOMError</code> of type 
+ * <code>"wf-invalid-character"</code>, with a 
+ * <code>DOMError.SEVERITY_ERROR</code> severity, if necessary; 
+ * </li>
+ * <li> check if 
+ * the data inside <code>ProcessingInstruction</code> nodes for invalid 
+ * characters and generate a <code>DOMError</code> of type 
+ * <code>"wf-invalid-character"</code>, with a 
+ * <code>DOMError.SEVERITY_ERROR</code> severity, if necessary; 
+ * </li>
+ * </ul></dd>
+ * <dt>
+ * <code>false</code></dt>
+ * <dd>[<em>optional</em>] Do not check for XML well-formedness. </dd>
+ * </dl></dd>
+ * </dl>
+ * <p> The resolution of the system identifiers associated with entities is 
+ * done using <code>Document.documentURI</code>. However, when the feature 
+ * "LS" defined in [<a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407'>DOM Level 3 Load and Save</a>]
+ *  is supported by the DOM implementation, the parameter 
+ * "resource-resolver" can also be used on <code>DOMConfiguration</code> 
+ * objects attached to <code>Document</code> nodes. If this parameter is 
+ * set, <code>Document.normalizeDocument()</code> will invoke the resource 
+ * resolver instead of using <code>Document.documentURI</code>. 
+ * <p>See also the <a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>Document Object Model (DOM) Level 3 Core Specification</a>.
+ * @since DOM Level 3
+ */
 public interface DOMConfiguration {
-	public void setParameter(String name, Object value) throws DOMException;
+    /**
+     * Set the value of a parameter.
+     * @param name The name of the parameter to set.
+     * @param value  The new value or <code>null</code> if the user wishes to 
+     *   unset the parameter. While the type of the value parameter is 
+     *   defined as <code>DOMUserData</code>, the object type must match the 
+     *   type defined by the definition of the parameter. For example, if 
+     *   the parameter is "error-handler", the value must be of type 
+     *   <code>DOMErrorHandler</code>. 
+     * @exception DOMException
+     *    NOT_FOUND_ERR: Raised when the parameter name is not recognized. 
+     *   <br> NOT_SUPPORTED_ERR: Raised when the parameter name is recognized 
+     *   but the requested value cannot be set. 
+     *   <br> TYPE_MISMATCH_ERR: Raised if the value type for this parameter 
+     *   name is incompatible with the expected value type. 
+     */
+    public void setParameter(String name, 
+                             Object value)
+                             throws DOMException;
 
-	public Object getParameter(String name) throws DOMException;
+    /**
+     *  Return the value of a parameter if known. 
+     * @param name  The name of the parameter. 
+     * @return  The current object associated with the specified parameter or 
+     *   <code>null</code> if no object has been associated or if the 
+     *   parameter is not supported. 
+     * @exception DOMException
+     *    NOT_FOUND_ERR: Raised when the parameter name is not recognized. 
+     */
+    public Object getParameter(String name)
+                               throws DOMException;
 
-	public boolean canSetParameter(String name, Object value);
+    /**
+     * Check if setting a parameter to a specific value is supported.
+     * @param name The name of the parameter to check.
+     * @param value  An object. if <code>null</code>, the returned value is 
+     *   <code>true</code>. 
+     * @return  <code>true</code> if the parameter could be successfully set 
+     *   to the specified value, or <code>false</code> if the parameter is 
+     *   not recognized or the requested value is not supported. This does 
+     *   not change the current value of the parameter itself. 
+     */
+    public boolean canSetParameter(String name, 
+                                   Object value);
 
-	public DOMStringList getParameterNames();
+    /**
+     *  The list of the parameters supported by this 
+     * <code>DOMConfiguration</code> object and for which at least one value 
+     * can be set by the application. Note that this list can also contain 
+     * parameter names defined outside this specification. 
+     */
+    public DOMStringList getParameterNames();
 
-}
\ No newline at end of file
+}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMStringList.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMStringList.java
index d222990..e6c348a 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMStringList.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/DOMStringList.java
@@ -1,10 +1,50 @@
+/*
+ * Copyright (c) 2004 World Wide Web Consortium,
+ *
+ * (Massachusetts Institute of Technology, European Research Consortium for
+ * Informatics and Mathematics, Keio University). All Rights Reserved. This
+ * work is distributed under the W3C(r) Software License [1] in the hope that
+ * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+ */
+
 package org.w3c.dom;
 
+/**
+ *  The <code>DOMStringList</code> interface provides the abstraction of an 
+ * ordered collection of <code>DOMString</code> values, without defining or 
+ * constraining how this collection is implemented. The items in the 
+ * <code>DOMStringList</code> are accessible via an integral index, starting 
+ * from 0. 
+ * <p>See also the <a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>Document Object Model (DOM) Level 3 Core Specification</a>.
+ * @since DOM Level 3
+ */
 public interface DOMStringList {
+    /**
+     *  Returns the <code>index</code>th item in the collection. If 
+     * <code>index</code> is greater than or equal to the number of 
+     * <code>DOMString</code>s in the list, this returns <code>null</code>. 
+     * @param index Index into the collection.
+     * @return  The <code>DOMString</code> at the <code>index</code>th 
+     *   position in the <code>DOMStringList</code>, or <code>null</code> if 
+     *   that is not a valid index. 
+     */
     public String item(int index);
 
+    /**
+     * The number of <code>DOMString</code>s in the list. The range of valid 
+     * child node indices is 0 to <code>length-1</code> inclusive.
+     */
     public int getLength();
 
+    /**
+     *  Test if a string is part of this <code>DOMStringList</code>. 
+     * @param str  The string to look for. 
+     * @return  <code>true</code> if the string has been found, 
+     *   <code>false</code> otherwise. 
+     */
     public boolean contains(String str);
 
-}
\ No newline at end of file
+}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/TypeInfo.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/TypeInfo.java
index 62e023e..054f990 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/TypeInfo.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/TypeInfo.java
@@ -1,18 +1,185 @@
+/*
+ * Copyright (c) 2004 World Wide Web Consortium,
+ *
+ * (Massachusetts Institute of Technology, European Research Consortium for
+ * Informatics and Mathematics, Keio University). All Rights Reserved. This
+ * work is distributed under the W3C(r) Software License [1] in the hope that
+ * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+ */
+
 package org.w3c.dom;
 
+/**
+ *  The <code>TypeInfo</code> interface represents a type referenced from 
+ * <code>Element</code> or <code>Attr</code> nodes, specified in the schemas 
+ * associated with the document. The type is a pair of a namespace URI and 
+ * name properties, and depends on the document's schema. 
+ * <p> If the document's schema is an XML DTD [<a href='http://www.w3.org/TR/2004/REC-xml-20040204'>XML 1.0</a>], the values 
+ * are computed as follows: 
+ * <ul>
+ * <li> If this type is referenced from an 
+ * <code>Attr</code> node, <code>typeNamespace</code> is 
+ * <code>"http://www.w3.org/TR/REC-xml"</code> and <code>typeName</code> 
+ * represents the <b>[attribute type]</b> property in the [<a href='http://www.w3.org/TR/2004/REC-xml-infoset-20040204/'>XML Information Set</a>]
+ * . If there is no declaration for the attribute, <code>typeNamespace</code>
+ *  and <code>typeName</code> are <code>null</code>. 
+ * </li>
+ * <li> If this type is 
+ * referenced from an <code>Element</code> node, <code>typeNamespace</code> 
+ * and <code>typeName</code> are <code>null</code>. 
+ * </li>
+ * </ul>
+ * <p> If the document's schema is an XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+ * , the values are computed as follows using the post-schema-validation 
+ * infoset contributions (also called PSVI contributions): 
+ * <ul>
+ * <li> If the <b>[validity]</b> property exists AND is <em>"invalid"</em> or <em>"notKnown"</em>: the {target namespace} and {name} properties of the declared type if 
+ * available, otherwise <code>null</code>. 
+ * <p ><b>Note:</b>  At the time of writing, the XML Schema specification does 
+ * not require exposing the declared type. Thus, DOM implementations might 
+ * choose not to provide type information if validity is not valid. 
+ * </li>
+ * <li> If the <b>[validity]</b> property exists and is <em>"valid"</em>: 
+ * <ol>
+ * <li> If <b>[member type definition]</b> exists: 
+ * <ol>
+ * <li>If {name} is not absent, then expose {name} and {target 
+ * namespace} properties of the <b>[member type definition]</b> property;
+ * </li>
+ * <li>Otherwise, expose the namespace and local name of the 
+ * corresponding anonymous type name.
+ * </li>
+ * </ol>
+ * </li>
+ * <li> If the <b>[type definition]</b> property exists: 
+ * <ol>
+ * <li>If {name} is not absent, then expose {name} and {target 
+ * namespace} properties of the <b>[type definition]</b> property;
+ * </li>
+ * <li>Otherwise, expose the namespace and local name of the 
+ * corresponding anonymous type name.
+ * </li>
+ * </ol> 
+ * </li>
+ * <li> If the <b>[member type definition anonymous]</b> exists: 
+ * <ol>
+ * <li>If it is false, then expose <b>[member type definition name]</b> and <b>[member type definition namespace]</b> properties;
+ * </li>
+ * <li>Otherwise, expose the namespace and local name of the 
+ * corresponding anonymous type name.
+ * </li>
+ * </ol> 
+ * </li>
+ * <li> If the <b>[type definition anonymous]</b> exists: 
+ * <ol>
+ * <li>If it is false, then expose <b>[type definition name]</b> and <b>[type definition namespace]</b> properties;
+ * </li>
+ * <li>Otherwise, expose the namespace and local name of the 
+ * corresponding anonymous type name.
+ * </li>
+ * </ol> 
+ * </li>
+ * </ol>
+ * </li>
+ * </ul>
+ * <p ><b>Note:</b>  Other schema languages are outside the scope of the W3C 
+ * and therefore should define how to represent their type systems using 
+ * <code>TypeInfo</code>. 
+ * <p>See also the <a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>Document Object Model (DOM) Level 3 Core Specification</a>.
+ * @since DOM Level 3
+ */
 public interface TypeInfo {
+    /**
+     *  The name of a type declared for the associated element or attribute, 
+     * or <code>null</code> if unknown. 
+     */
     public String getTypeName();
 
+    /**
+     *  The namespace of the type declared for the associated element or 
+     * attribute or <code>null</code> if the element does not have 
+     * declaration or if no namespace information is available. 
+     */
     public String getTypeNamespace();
 
     // DerivationMethods
+    /**
+     *  If the document's schema is an XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+     * , this constant represents the derivation by <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#key-typeRestriction'>
+     * restriction</a> if complex types are involved, or a <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#element-restriction'>
+     * restriction</a> if simple types are involved. 
+     * <br>  The reference type definition is derived by restriction from the 
+     * other type definition if the other type definition is the same as the 
+     * reference type definition, or if the other type definition can be 
+     * reached recursively following the {base type definition} property 
+     * from the reference type definition, and all the <em>derivation methods</em> involved are restriction. 
+     */
     public static final int DERIVATION_RESTRICTION    = 0x00000001;
+    /**
+     *  If the document's schema is an XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+     * , this constant represents the derivation by <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#key-typeExtension'>
+     * extension</a>. 
+     * <br>  The reference type definition is derived by extension from the 
+     * other type definition if the other type definition can be reached 
+     * recursively following the {base type definition} property from the 
+     * reference type definition, and at least one of the <em>derivation methods</em> involved is an extension. 
+     */
     public static final int DERIVATION_EXTENSION      = 0x00000002;
+    /**
+     *  If the document's schema is an XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+     * , this constant represents the <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#element-union'>
+     * union</a> if simple types are involved. 
+     * <br> The reference type definition is derived by union from the other 
+     * type definition if there exists two type definitions T1 and T2 such 
+     * as the reference type definition is derived from T1 by 
+     * <code>DERIVATION_RESTRICTION</code> or 
+     * <code>DERIVATION_EXTENSION</code>, T2 is derived from the other type 
+     * definition by <code>DERIVATION_RESTRICTION</code>, T1 has {variety} <em>union</em>, and one of the {member type definitions} is T2. Note that T1 could be 
+     * the same as the reference type definition, and T2 could be the same 
+     * as the other type definition. 
+     */
     public static final int DERIVATION_UNION          = 0x00000004;
+    /**
+     *  If the document's schema is an XML Schema [<a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/'>XML Schema Part 1</a>]
+     * , this constant represents the <a href='http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#element-list'>list</a>. 
+     * <br> The reference type definition is derived by list from the other 
+     * type definition if there exists two type definitions T1 and T2 such 
+     * as the reference type definition is derived from T1 by 
+     * <code>DERIVATION_RESTRICTION</code> or 
+     * <code>DERIVATION_EXTENSION</code>, T2 is derived from the other type 
+     * definition by <code>DERIVATION_RESTRICTION</code>, T1 has {variety} <em>list</em>, and T2 is the {item type definition}. Note that T1 could be the same as 
+     * the reference type definition, and T2 could be the same as the other 
+     * type definition. 
+     */
     public static final int DERIVATION_LIST           = 0x00000008;
 
+    /**
+     *  This method returns if there is a derivation between the reference 
+     * type definition, i.e. the <code>TypeInfo</code> on which the method 
+     * is being called, and the other type definition, i.e. the one passed 
+     * as parameters. 
+     * @param typeNamespaceArg  the namespace of the other type definition. 
+     * @param typeNameArg  the name of the other type definition. 
+     * @param derivationMethod  the type of derivation and conditions applied 
+     *   between two types, as described in the list of constants provided 
+     *   in this interface. 
+     * @return  If the document's schema is a DTD or no schema is associated 
+     *   with the document, this method will always return <code>false</code>
+     *   .  If the document's schema is an XML Schema, the method will 
+     *   <code>true</code> if the reference type definition is derived from 
+     *   the other type definition according to the derivation parameter. If 
+     *   the value of the parameter is <code>0</code> (no bit is set to 
+     *   <code>1</code> for the <code>derivationMethod</code> parameter), 
+     *   the method will return <code>true</code> if the other type 
+     *   definition can be reached by recursing any combination of {base 
+     *   type definition}, {item type definition}, or {member type 
+     *   definitions} from the reference type definition. 
+     */
     public boolean isDerivedFrom(String typeNamespaceArg, 
                                  String typeNameArg, 
                                  int derivationMethod);
 
-}
\ No newline at end of file
+}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/UserDataHandler.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/UserDataHandler.java
index a1b0f1b..a16ea73 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/UserDataHandler.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/UserDataHandler.java
@@ -1,17 +1,72 @@
+/*
+ * Copyright (c) 2004 World Wide Web Consortium,
+ *
+ * (Massachusetts Institute of Technology, European Research Consortium for
+ * Informatics and Mathematics, Keio University). All Rights Reserved. This
+ * work is distributed under the W3C(r) Software License [1] in the hope that
+ * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+ */
+
 package org.w3c.dom;
 
+/**
+ * When associating an object to a key on a node using 
+ * <code>Node.setUserData()</code> the application can provide a handler 
+ * that gets called when the node the object is associated to is being 
+ * cloned, imported, or renamed. This can be used by the application to 
+ * implement various behaviors regarding the data it associates to the DOM 
+ * nodes. This interface defines that handler. 
+ * <p>See also the <a href='http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407'>Document Object Model (DOM) Level 3 Core Specification</a>.
+ * @since DOM Level 3
+ */
 public interface UserDataHandler {
     // OperationType
+    /**
+     * The node is cloned, using <code>Node.cloneNode()</code>.
+     */
     public static final short NODE_CLONED               = 1;
+    /**
+     * The node is imported, using <code>Document.importNode()</code>.
+     */
     public static final short NODE_IMPORTED             = 2;
+    /**
+     * The node is deleted.
+     * <p ><b>Note:</b> This may not be supported or may not be reliable in 
+     * certain environments, such as Java, where the implementation has no 
+     * real control over when objects are actually deleted.
+     */
     public static final short NODE_DELETED              = 3;
+    /**
+     * The node is renamed, using <code>Document.renameNode()</code>.
+     */
     public static final short NODE_RENAMED              = 4;
+    /**
+     * The node is adopted, using <code>Document.adoptNode()</code>.
+     */
     public static final short NODE_ADOPTED              = 5;
 
+    /**
+     * This method is called whenever the node for which this handler is 
+     * registered is imported or cloned.
+     * <br> DOM applications must not raise exceptions in a 
+     * <code>UserDataHandler</code>. The effect of throwing exceptions from 
+     * the handler is DOM implementation dependent. 
+     * @param operation Specifies the type of operation that is being 
+     *   performed on the node.
+     * @param key Specifies the key for which this handler is being called. 
+     * @param data Specifies the data for which this handler is being called. 
+     * @param src Specifies the node being cloned, adopted, imported, or 
+     *   renamed. This is <code>null</code> when the node is being deleted.
+     * @param dst Specifies the node newly created if any, or 
+     *   <code>null</code>.
+     */
     public void handle(short operation, 
                        String key, 
                        Object data, 
                        Node src, 
                        Node dst);
 
-}
\ No newline at end of file
+}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java
index 93e3310..b72a1c1 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java
@@ -1,3 +1,14 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.ranges;
 
@@ -5,9 +16,9 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface DocumentRange {
 	/**
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java
index a22c897..170fc60 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java
@@ -1,69 +1,202 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.ranges;
 
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DocumentFragment;
 import org.w3c.dom.Node;
+import org.w3c.dom.DocumentFragment;
+import org.w3c.dom.DOMException;
 
 /**
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface Range {
 	/**
-	 * Compare end boundary-point of <code>sourceRange</code> to end
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short END_TO_END = 2;
-	/**
-	 * Compare end boundary-point of <code>sourceRange</code> to start
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short END_TO_START = 3;
-	/**
-	 * Compare start boundary-point of <code>sourceRange</code> to end
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short START_TO_END = 1;
-
-	// CompareHow
-	/**
-	 * Compare start boundary-point of <code>sourceRange</code> to start
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short START_TO_START = 0;
-
-	/**
-	 * Duplicates the contents of a Range
+	 * Node within which the Range begins
 	 * 
-	 * @return A DocumentFragment that contains content equivalent to this
-	 *         Range.
-	 * @exception DOMException
-	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
-	 *                would be extracted into the new DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public DocumentFragment cloneContents() throws DOMException;
-
-	/**
-	 * Produces a new Range whose boundary-points are equal to the
-	 * boundary-points of the Range.
-	 * 
-	 * @return The duplicated Range.
 	 * @exception DOMException
 	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
 	 *                already been invoked on this object.
 	 */
-	public Range cloneRange() throws DOMException;
+	public Node getStartContainer() throws DOMException;
+
+	/**
+	 * Offset within the starting node of the Range.
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public int getStartOffset() throws DOMException;
+
+	/**
+	 * Node within which the Range ends
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public Node getEndContainer() throws DOMException;
+
+	/**
+	 * Offset within the ending node of the Range.
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public int getEndOffset() throws DOMException;
+
+	/**
+	 * TRUE if the Range is collapsed
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public boolean getCollapsed() throws DOMException;
+
+	/**
+	 * The deepest common ancestor container of the Range's two
+	 * boundary-points.
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public Node getCommonAncestorContainer() throws DOMException;
+
+	/**
+	 * Sets the attributes describing the start of the Range.
+	 * 
+	 * @param refNodeThe
+	 *            <code>refNode</code> value. This parameter must be
+	 *            different from <code>null</code>.
+	 * @param offsetThe
+	 *            <code>startOffset</code> value.
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
+	 *                or an ancestor of <code>refNode</code> is an Entity,
+	 *                Notation, or DocumentType node.
+	 * @exception DOMException
+	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
+	 *                negative or greater than the number of child units in
+	 *                <code>refNode</code>. Child units are 16-bit units if
+	 *                <code>refNode</code> is a type of CharacterData node
+	 *                (e.g., a Text or Comment node) or a
+	 *                ProcessingInstruction node. Child units are Nodes in all
+	 *                other cases. <br>
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setStart(Node refNode, int offset) throws RangeException, DOMException;
+
+	/**
+	 * Sets the attributes describing the end of a Range.
+	 * 
+	 * @param refNodeThe
+	 *            <code>refNode</code> value. This parameter must be
+	 *            different from <code>null</code>.
+	 * @param offsetThe
+	 *            <code>endOffset</code> value.
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
+	 *                or an ancestor of <code>refNode</code> is an Entity,
+	 *                Notation, or DocumentType node.
+	 * @exception DOMException
+	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
+	 *                negative or greater than the number of child units in
+	 *                <code>refNode</code>. Child units are 16-bit units if
+	 *                <code>refNode</code> is a type of CharacterData node
+	 *                (e.g., a Text or Comment node) or a
+	 *                ProcessingInstruction node. Child units are Nodes in all
+	 *                other cases. <br>
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setEnd(Node refNode, int offset) throws RangeException, DOMException;
+
+	/**
+	 * Sets the start position to be before a node
+	 * 
+	 * @param refNodeRange
+	 *            starts before <code>refNode</code>
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
+	 *                <code>refNode</code> is not an Attr, Document, or
+	 *                DocumentFragment node or if <code>refNode</code> is a
+	 *                Document, DocumentFragment, Attr, Entity, or Notation
+	 *                node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setStartBefore(Node refNode) throws RangeException, DOMException;
+
+	/**
+	 * Sets the start position to be after a node
+	 * 
+	 * @param refNodeRange
+	 *            starts after <code>refNode</code>
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
+	 *                <code>refNode</code> is not an Attr, Document, or
+	 *                DocumentFragment node or if <code>refNode</code> is a
+	 *                Document, DocumentFragment, Attr, Entity, or Notation
+	 *                node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setStartAfter(Node refNode) throws RangeException, DOMException;
+
+	/**
+	 * Sets the end position to be before a node.
+	 * 
+	 * @param refNodeRange
+	 *            ends before <code>refNode</code>
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
+	 *                <code>refNode</code> is not an Attr, Document, or
+	 *                DocumentFragment node or if <code>refNode</code> is a
+	 *                Document, DocumentFragment, Attr, Entity, or Notation
+	 *                node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setEndBefore(Node refNode) throws RangeException, DOMException;
+
+	/**
+	 * Sets the end of a Range to be after a node
+	 * 
+	 * @param refNodeRange
+	 *            ends after <code>refNode</code>.
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
+	 *                <code>refNode</code> is not an Attr, Document or
+	 *                DocumentFragment node or if <code>refNode</code> is a
+	 *                Document, DocumentFragment, Attr, Entity, or Notation
+	 *                node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void setEndAfter(Node refNode) throws RangeException, DOMException;
 
 	/**
 	 * Collapse a Range onto one of its boundary-points
@@ -78,6 +211,64 @@
 	public void collapse(boolean toStart) throws DOMException;
 
 	/**
+	 * Select a node and its contents
+	 * 
+	 * @param refNodeThe
+	 *            node to select.
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if an ancestor of
+	 *                <code>refNode</code> is an Entity, Notation or
+	 *                DocumentType node or if <code>refNode</code> is a
+	 *                Document, DocumentFragment, Attr, Entity, or Notation
+	 *                node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void selectNode(Node refNode) throws RangeException, DOMException;
+
+	/**
+	 * Select the contents within a node
+	 * 
+	 * @param refNodeNode
+	 *            to select from
+	 * @exception RangeException
+	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
+	 *                or an ancestor of <code>refNode</code> is an Entity,
+	 *                Notation or DocumentType node.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void selectNodeContents(Node refNode) throws RangeException, DOMException;
+
+	// CompareHow
+	/**
+	 * Compare start boundary-point of <code>sourceRange</code> to start
+	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
+	 * is invoked.
+	 */
+	public static final short START_TO_START = 0;
+	/**
+	 * Compare start boundary-point of <code>sourceRange</code> to end
+	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
+	 * is invoked.
+	 */
+	public static final short START_TO_END = 1;
+	/**
+	 * Compare end boundary-point of <code>sourceRange</code> to end
+	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
+	 * is invoked.
+	 */
+	public static final short END_TO_END = 2;
+	/**
+	 * Compare end boundary-point of <code>sourceRange</code> to start
+	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
+	 * is invoked.
+	 */
+	public static final short END_TO_START = 3;
+
+	/**
 	 * Compare the boundary-points of two Ranges in a document.
 	 * 
 	 * @param howA
@@ -112,19 +303,6 @@
 	public void deleteContents() throws DOMException;
 
 	/**
-	 * Called to indicate that the Range is no longer in use and that the
-	 * implementation may relinquish any resources associated with this Range.
-	 * Subsequent calls to any methods or attribute getters on this Range will
-	 * result in a <code>DOMException</code> being thrown with an error code
-	 * of <code>INVALID_STATE_ERR</code>.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void detach() throws DOMException;
-
-	/**
 	 * Moves the contents of a Range from the containing document or document
 	 * fragment to a new DocumentFragment.
 	 * 
@@ -142,59 +320,17 @@
 	public DocumentFragment extractContents() throws DOMException;
 
 	/**
-	 * TRUE if the Range is collapsed
+	 * Duplicates the contents of a Range
 	 * 
+	 * @return A DocumentFragment that contains content equivalent to this
+	 *         Range.
 	 * @exception DOMException
+	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
+	 *                would be extracted into the new DocumentFragment. <br>
 	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
 	 *                already been invoked on this object.
 	 */
-	public boolean getCollapsed() throws DOMException;
-
-	/**
-	 * The deepest common ancestor container of the Range's two
-	 * boundary-points.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getCommonAncestorContainer() throws DOMException;
-
-	/**
-	 * Node within which the Range ends
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getEndContainer() throws DOMException;
-
-	/**
-	 * Offset within the ending node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getEndOffset() throws DOMException;
-
-	/**
-	 * Node within which the Range begins
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getStartContainer() throws DOMException;
-
-	/**
-	 * Offset within the starting node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getStartOffset() throws DOMException;
+	public DocumentFragment cloneContents() throws DOMException;
 
 	/**
 	 * Inserts a node into the Document or DocumentFragment at the start of
@@ -228,156 +364,6 @@
 	public void insertNode(Node newNode) throws DOMException, RangeException;
 
 	/**
-	 * Select a node and its contents
-	 * 
-	 * @param refNodeThe
-	 *            node to select.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if an ancestor of
-	 *                <code>refNode</code> is an Entity, Notation or
-	 *                DocumentType node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNode(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Select the contents within a node
-	 * 
-	 * @param refNodeNode
-	 *            to select from
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation or DocumentType node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNodeContents(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the attributes describing the end of a Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>endOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEnd(Node refNode, int offset) throws RangeException, DOMException;
-
-	/**
-	 * Sets the end of a Range to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            ends after <code>refNode</code>.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndAfter(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the end position to be before a node.
-	 * 
-	 * @param refNodeRange
-	 *            ends before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndBefore(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the attributes describing the start of the Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>startOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStart(Node refNode, int offset) throws RangeException, DOMException;
-
-	/**
-	 * Sets the start position to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            starts after <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartAfter(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the start position to be before a node
-	 * 
-	 * @param refNodeRange
-	 *            starts before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartBefore(Node refNode) throws RangeException, DOMException;
-
-	/**
 	 * Reparents the contents of the Range to the given node and inserts the
 	 * node at the position of the start of the Range.
 	 * 
@@ -409,6 +395,17 @@
 	public void surroundContents(Node newParent) throws DOMException, RangeException;
 
 	/**
+	 * Produces a new Range whose boundary-points are equal to the
+	 * boundary-points of the Range.
+	 * 
+	 * @return The duplicated Range.
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public Range cloneRange() throws DOMException;
+
+	/**
 	 * Returns the contents of a Range as a string. This string contains only
 	 * the data characters, not any markup.
 	 * 
@@ -419,4 +416,17 @@
 	 */
 	public String toString() throws DOMException;
 
+	/**
+	 * Called to indicate that the Range is no longer in use and that the
+	 * implementation may relinquish any resources associated with this Range.
+	 * Subsequent calls to any methods or attribute getters on this Range will
+	 * result in a <code>DOMException</code> being thrown with an error code
+	 * of <code>INVALID_STATE_ERR</code>.
+	 * 
+	 * @exception DOMException
+	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
+	 *                already been invoked on this object.
+	 */
+	public void detach() throws DOMException;
+
 }
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java
index 293e343..325acbd 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java
@@ -1,3 +1,14 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.ranges;
 
@@ -7,15 +18,17 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public class RangeException extends RuntimeException {
-	/**
-	 * Default <code>serialVersionUID</code>
-	 */
-	private static final long serialVersionUID = 1L;
+	public RangeException(short code, String message) {
+		super(message);
+		this.code = code;
+	}
+
+	public short code;
 	// RangeExceptionCode
 	/**
 	 * If the boundary-points of a Range do not meet specific requirements.
@@ -28,11 +41,4 @@
 	 */
 	public static final short INVALID_NODE_TYPE_ERR = 2;
 
-	public short code;
-
-	public RangeException(short code, String message) {
-		super(message);
-		this.code = code;
-	}
-
 }
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java
index 94b583e..b56d0fc 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java
@@ -1,8 +1,19 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.traversal;
 
-import org.w3c.dom.DOMException;
 import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
 
 /**
  * <code>DocumentTraversal</code> contains methods that create iterators and
@@ -14,9 +25,9 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface DocumentTraversal {
 	/**
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java
index 86d56e5..5badf1d 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java
@@ -1,3 +1,14 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.traversal;
 
@@ -23,9 +34,9 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface NodeFilter {
 	// Constants returned by acceptNode
@@ -84,7 +95,7 @@
 	public static final int SHOW_ENTITY_REFERENCE = 0x00000010;
 	/**
 	 * Show <code>Entity</code> nodes. This is meaningful only when creating
-	 * an iterator or tree-walker with an <code> Entity</code> node as its
+	 * an iterator or tree-walker with an<code> Entity</code> node as its
 	 * <code>root</code>; in this case, it means that the
 	 * <code>Entity</code> node will appear in the first position of the
 	 * traversal. Since entities are not part of the document tree, they do
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java
index b7a5770..8616e70 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java
@@ -1,8 +1,19 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.traversal;
 
-import org.w3c.dom.DOMException;
 import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
 
 /**
  * <code>Iterators</code> are used to step through a set of nodes, e.g. the
@@ -17,9 +28,9 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface NodeIterator {
 	/**
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java
index 92155b1..0ec2e62 100644
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java
+++ b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java
@@ -1,8 +1,19 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
 
 package org.w3c.dom.traversal;
 
-import org.w3c.dom.DOMException;
 import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
 
 /**
  * <code>TreeWalker</code> objects are used to navigate a document tree or
@@ -23,9 +34,9 @@
  * <p>
  * See also the <a
  * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
+ * Object Model (DOM) Level 2 Traversal and Range Specification</a>.
  * 
- * @see DOM Level 2
+ * @since DOM Level 2
  */
 public interface TreeWalker {
 	/**
@@ -90,7 +101,7 @@
 	/**
 	 * Moves to and returns the closest visible ancestor node of the current
 	 * node. If the search for <code>parentNode</code> attempts to step
-	 * upward from the <code>TreeWalker</code>'s<code>root</code> node,
+	 * upward from the <code>TreeWalker</code>'s <code>root</code> node,
 	 * or if it fails to find a visible ancestor node, this method retains the
 	 * current position and returns <code>null</code>.
 	 * 
@@ -149,7 +160,7 @@
 	 * document order relative to the current node, and returns the new node.
 	 * If the current node has no previous node, or if the search for
 	 * <code>previousNode</code> attempts to step upward from the
-	 * <code>TreeWalker</code>'s<code>root</code> node, returns
+	 * <code>TreeWalker</code>'s <code>root</code> node, returns
 	 * <code>null</code>, and retains the current node.
 	 * 
 	 * @return The new node, or <code>null</code> if the current node has no