<?xml version="1.0" encoding="us-ascii"?>
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ --><!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.2-Based DOM//EN" "http://www.w3.org/2002/08/xmlspec-v22-dom.dtd">
<spec w3c-doctype="wd">
  <!--
  *************************************************************************
  * FRONT MATTER                                                          *
  *************************************************************************
  -->
<!-- 
  ****************************************************** 
  | filenames to be used for each section              |
  ******************************************************
-->
<?command-options --map Copyright-Notice copyright-notice
--map Introduction     introduction
--map TOC expanded-toc
--map Core core
--map Events events
--map idl idl-definitions
--map ecma-binding ecma-script-binding
--map java-binding java-binding
--map Index def-index
--map Objects object-index
--map References references
--map Errors errors
--map Level-3-AS abstract-schemas
--map Load-Save load-save
--map XPath xpath
--map KeySet keyset
?>

<?command-options --map -IndexFile-      def-index
--map -OjbectIndexFile-      object-index
--strip-references
--strip-glossary
?>

<?command-options --map-type ECMAScript Object Object
--map-type ECMAScript DOMString String
--map-type ECMAScript "unsigned short" Number
--map-type ECMAScript "unsigned int" Number
--map-type ECMAScript "unsigned long" Number
--map-type ECMAScript long Number
--map-type ECMAScript boolean Boolean

--map-type ECMAScript DOMTimeStamp Date
--map-type ECMAScript DOMObject Object
--map-type ECMAScript DOMUserData "any type"
--map-type ECMAScript DOMInputStream Object
--map-type ECMAScript DOMOutputStream Object
--map-type ECMAScript DOMReader "this is an error and shouldn't be used."
--map-type ECMAScript DOMSystemException Object

--map-type Java Object Object
--map-type Java DOMString String
--map-type Java "unsigned short" short
--map-type Java "unsigned int" int
--map-type Java "unsigned long" int
--map-type Java long int
--map-type Java boolean boolean

--map-type Java DOMTimeStamp long
--map-type Java DOMObject Object
--map-type Java DOMUserData Object
--map-type Java DOMInputStream java.io.InputStream
--map-type Java DOMOutputStream java.io.OutputStream
--map-type Java DOMReader java.io.Reader
--map-type Java DOMSystemException Exception
?>

<header> 
<title>Document Object Model (DOM) Level 3 Validation Specification</title>
<version>1.0</version> <w3c-designation>WD-DOM-Level-3-Val-20030205
</w3c-designation> <w3c-doctype>W3C Working Draft</w3c-doctype> <pubdate> 
<day>05</day> <month>February</month> <year>2003</year> 
</pubdate> 
<publoc> <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205</loc>
</publoc>
<altlocs>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="html" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/xml-source.xml" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">XML file</loc>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="plain" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/DOM3-Val.txt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">plain text</loc>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="postscript" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/DOM3-Val.ps" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">PostScript file</loc>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="pdf" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/DOM3-Val.pdf" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">PDF file</loc>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="html" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/DOM3-Val.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">single HTML file</loc>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" role="zip" href="http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/DOM3-Val.zip" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">ZIP file</loc>
    </altlocs>
<latestloc> <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/DOM-Level-3-Val" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/TR/DOM-Level-3-Val</loc> </latestloc> 
<prevlocs>
<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2002/WD-DOM-Level-3-Val-20021008" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/TR/2002/WD-DOM-Level-3-Val-20021008</loc>
</prevlocs> 
<authlist> 
<author role="editor"> <name>Ben Chang</name>
<affiliation>Oracle</affiliation> </author>
<author role="editor"> <name>Joe Kesselman</name>
<affiliation>IBM  (until September 2001)</affiliation> </author>
<author role="editor"><name>Rezaur Rahman</name> 
<affiliation>Intel Corporation (until July 2001)</affiliation> 
</author> 
</authlist>
    <!--
    ******************************************************
    * DOCUMENT ABSTRACT                                  *
    ******************************************************
    -->
<abstract id="id-abstract"> 

      <p>
	This specification defines the Document Object Model Validation
	Level 3, a platform- and language-neutral interface. This module
	provides the guidance to programs and scripts to dynamically
	update the content and the structure of documents while ensuring
	that the document remains valid, or to ensure that the document
	becomes valid.
      </p>

</abstract>

    <status>
      <p>
	<emph>This section describes the status of this document at the
	time of its publication. Other documents may supersede this
	document. The latest status of this document series is
	maintained at the W3C.</emph>
      </p>
      <p>
	This is the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Process-20010719/tr.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Working
	Draft specification</loc> of "DOM Level 3 Validation". This
	version is based on the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/2002/10/DOM-Level-3-Val-issues" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">feedback
	during the last call period</loc>. The intention of the Working
	Group is to ask the Director to move the document to Candidate
	Recommendation status soon. Comments on this document are
	invited and are to be sent to the public mailing list <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="mailto:www-dom@w3.org" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">www-dom@w3.org</loc>. An archive is available
	at <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://lists.w3.org/Archives/Public/www-dom/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://lists.w3.org/Archives/Public/www-dom/</loc>.
      </p>
      <p>
	Individuals or organizations are also invited to send a message
	to the public mailing list if they intend to produce an
	implementation of this module.
      </p>
      <p>
	It is a draft document and may be updated, replaced or obsoleted
	by other documents at any time. It is inappropriate to use W3C
	Working Drafts as reference material or to cite them as other
	than "work in progress". This is work in progress and does not
	imply endorsement by, or the consensus of, either W3C or members
	of the DOM working group.
      </p>
      <p>
	This document has been produced as part of the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/DOM/Activity.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">W3C DOM
	Activity</loc>. The authors of this document are the DOM WG
	members.
      </p>
      <p>
        Patent disclosures relevant to this specification may be found
        on the Working Group's <loc xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest" href="http://www.w3.org/2002/08/02-DOM-Disclosures.html">patent
        disclosure page</loc>.
      </p>
      <p>
	A list of <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">current W3C
	Recommendations and other technical documents</loc> can be found
	at http://www.w3.org/TR.
      </p>
    </status>

<sourcedesc>
<p>Created in electronic form.</p>
</sourcedesc>
<langusage>
<language id="en">English</language>
</langusage>
<revisiondesc>
<p>$Revision: 1.4 $</p>
</revisiondesc>
<?GENERATE-TOC?>
</header>
<front>
  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<div1 id="TOC">
  <head>Expanded Table of Contents</head>
  <?GENERATE-EXPANDED-TOC?>	
</div1>

  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<!--
 *************************************************************************
 * BEGINNING OF COPYRIGHT NOTICE                                         *
 *************************************************************************
-->
<div1 id="Copyright-Notice">
  <head>W3C Copyright Notices and Licenses</head>

  <p role="important">
    Copyright &#169; 2003 <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World
    Wide Web Consortium</loc>, (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute of
    Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European
    Research Consortium for Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All Rights
    Reserved.
  </p>
  <p>
    This document is published under the <specref ref="Copyright-notice-document"/>. The bindings within this document
    are published under the <specref ref="Copyright-notice-software"/>.
    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>
  <div2 id="Copyright-notice-document">
    <head>W3C<sup>&#174;</sup> Document Copyright Notice and License</head>
    <note>
      <p>
	This section is a copy of the W3C<sup>&#174;</sup> Document
	Notice and License and could be found at <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</loc>.
      </p>
    </note>
    <p role="important">
      Copyright &#169; 2003 <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World Wide Web Consortium</loc>, (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute of
      Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European
      Research Consortium for Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All Rights
      Reserved.
    </p>
    <p role="important">      
      http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231
    </p>
    <p>
      Public documents on the W3C site are provided by the copyright
      holders under the following license. By using and/or copying this
      document, or the W3C document from which this statement is linked,
      you (the licensee) agree that you have read, understood, and will
      comply with the following terms and conditions:
    </p>
    <p>
      Permission to copy, and distribute the contents of this document,
      or the W3C document from which this statement is linked, in any
      medium for any purpose and without fee or royalty is hereby
      granted, provided that you include the following on
      <emph>ALL</emph> copies of the document, or portions thereof, that
      you use:
    </p>
    <olist>
      <item>
	<p>
	  A link or URL to the original W3C document.
	</p>
      </item>
      <item>
	<p>
	  The pre-existing copyright notice of the original author, or
	  if it doesn't exist, a notice (hypertext is preferred, but a
	  textual representation is permitted) of the form:
	  "Copyright &#169; [$date-of-document] <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World Wide Web Consortium</loc>,
	  (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute
	  of Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European Research Consortium for
	  Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All
	  Rights Reserved.  <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</loc>"
	</p>
      </item>
      <item>
	<p>
	  <emph>If it exists</emph>, the STATUS of the W3C document.
	</p>
      </item>
    </olist>
    <p>
      When space permits, inclusion of the full text of this <emph role="important">NOTICE</emph> should be provided. We request that
      authorship attribution be provided in any software, documents, or other
      items or products that you create pursuant to the implementation of the
      contents of this document, or any portion thereof.
    </p>
    <p>
      No right to create modifications or derivatives of W3C documents is
      granted pursuant to this license. However, if additional requirements
      (documented in the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Legal/IPR-FAQ" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Copyright
      FAQ</loc>) are satisfied, the right to create modifications or
      derivatives is sometimes granted by the W3C to individuals complying with
      those requirements.
    </p>
    <p>
      THIS DOCUMENT IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE
      NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT
      LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
      PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE DOCUMENT
      ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH
      CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
      TRADEMARKS OR OTHER RIGHTS.
    </p>
    <p>
      COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
      CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE DOCUMENT OR THE
      PERFORMANCE OR IMPLEMENTATION OF THE CONTENTS THEREOF.
    </p>
    <p>
      The name and trademarks of copyright holders may NOT be used in
      advertising or publicity pertaining to this document or its contents
      without specific, written prior permission. Title to copyright in this
      document will at all times remain with copyright holders.
    </p>
  </div2>
  <div2 id="Copyright-notice-software">
    <head>W3C<sup>&#174;</sup> Software Copyright Notice and License</head>
    <note>
      <p>
	This section is a copy of the W3C<sup>&#174;</sup> Software
	Copyright Notice and License and could be found at <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231</loc>
      </p>
    </note>
    <p role="important">
      Copyright &#169; 2003 <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World Wide Web Consortium</loc>, (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute of
      Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European
      Research Consortium for Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All Rights
      Reserved.
    </p>
    <p role="important">      
      http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
    </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, 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>
    <olist>
      <item>
	<p>The full text of this NOTICE in a location viewable to users of the
	redistributed or derivative work.</p>
      </item>
      <item>
	<p>
	  Any pre-existing intellectual property disclaimers, notices,
	  or terms and conditions. If none exist, the <specref ref="Copyright-short-notice"/> should be included (hypertext
	  is preferred, text is permitted) within the body of any
	  redistributed or derivative code.
	</p>
      </item>
      <item>
	<p>
	  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.)
	</p>
      </item>
    </olist>
    <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>
      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>
  </div2>
  <div2 id="Copyright-short-notice">
    <head>W3C<sup>&#174;</sup> Short Software Notice</head>

    <note>
      <p>
	This section is a copy of the W3C<sup>&#174;</sup> Short Software
	Notice and could be found at <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/Consortium/Legal/2002/copyright-software-short-notice-20021231" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/Consortium/Legal/2002/copyright-software-short-notice-20021231</loc>
      </p>
    </note>
    <p role="important">
      Copyright &#169; 2003 <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World
      Wide Web Consortium</loc>, (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute of
      Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European
      Research Consortium for Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All Rights
      Reserved.
    </p>
    <p>
      Copyright &#169; [$date-of-software] <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">World Wide Web Consortium</loc>, (<loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.lcs.mit.edu/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Massachusetts Institute of
      Technology</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ercim.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">European
      Research Consortium for Informatics and Mathematics</loc>, <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.keio.ac.jp/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Keio University</loc>). All Rights
      Reserved. This work is distributed under the W3C<sup>&#174;</sup>
      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.
    </p>
    <p>
      [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
    </p>
  </div2>
</div1>
<!--
 *************************************************************************
 * END OF COPYRIGHT NOTICE                                               *
 *************************************************************************
-->

</front> 
 
<body>
  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<!--
 *************************************************************************
 * BEGINNING OF VALIDATION
 *************************************************************************
-->
<?xml-stylesheet href="../../local/apps/SoftQuad/XMetaL/display/spec.css"
type="text/css"?>
<div1 id="Level-3-Validation"> 
  <head>Validation</head> 
  <orglist role="editors"> 
    <member> 
      <name>Ben Chang</name> 
      <affiliation>Oracle</affiliation> 
    </member> 
    <member> 
      <name>Joe Kesselman</name> 
      <affiliation>IBM (until September 2001)</affiliation> 
    </member> 
    <member> 
      <name>Rezaur Rahman</name> 
      <affiliation>Intel Corporation (until July 2001)</affiliation> 
    </member>     

  </orglist><?GENERATE-MINI-TOC?>
  <!--
  ******************************************************
  EARLY DRAFT! Last known edit 2/05/2003
  Suggestions welcome, especially if accompanied by
  proposed revisions already marked up as per spec.dtd! 
  ******************************************************
  -->
  <!--
  ******************************************************
  | OVERVIEW                                            |
  ******************************************************
  -->
  <div2 id="VAL-overview"> 
    <head>Overview</head> 
    <p>This chapter describes the optional DOM Level 3 Validation
       feature. This module provides APIs to guide construction and editing
       of XML documents.  Examples of such guided editing are queries of
       the nature that combine questions like "what does
       the grammar allow me to insert/delete here" and "if I insert/delete
       here, will the document still be valid."
    </p>
    <p>
       Users may also want to know several levels of details, e.g., 
       all the possible children, those which would be valid given
       what precedes this point, lists of defined symbols of a given
       type, in order to help in editing and creating a XML document.
       Some of these queries would prompt checks and warn you if you're
       about to conflict with or overwrite such data.
    </p>
    <p>
       Finally, users would like to validate an edited or newly 
       constructed document before serializing it or passing it to other
       users.  To some, they may edit, come up with an invalid document,
       then edit again to result in a valid document.  During this process,
       these APIs can allow the user to check the validity of the document
       or sub-tree on demand; and if needed can also require that the 
       document or sub-tree remain valid during this editing process via
       the <code>continuousValidityChecking</code> flag.
    </p>
    <p>
       A DOM application can use the <code>hasFeature(feature, version)</code> 
       method of the <code>DOMImplementation</code> interface to determine 
       with parameter values <code>"VAL-DOC"</code> and <code>"3.0"</code>, 
       respectively, whether or not these interfaces are 
       supported by the implementation.
    </p>       
    <p>
       This chapter focuses on the editing aspects used in the XML 
       document editing world and usage of such information.
    </p>

<!--
  ******************************************************
  | ISSUES                                             |
  ******************************************************
<div2 id="Level-3-VAL-Issue-List">
  <head>Issue List</head>

  <div3 id="VAL-Issues-List-Resolved">
    <head>Resolved Issues</head>

    <issue id="VAL-Issue-8" status="open">
      <p>For Validation interfaces there should be no dependency on DOM Core. 
      </p>
      <p>The <code>NodeEditVAL</code> interface will not extend DOM Core.  It is simply an object that expresses similar interfaces.</p>
    </issue>

  </div3>

-->

</div2>
  
  <div2 id="Exception"><head>Exceptions</head> 
    <p>This section describes the "VAL-DOC" exceptions. </p> 
    <definitions> 

<exception id="ExceptionVAL" name="ExceptionVAL">
  <descr>
    <p>
      The Validation operations may throw a <code>ExceptionVAL</code> as 
      described in their descriptions.
    </p>
  </descr> 

  <component id="ExceptionVAL-code" name="code">
    <typename>unsigned short</typename>
  </component>

</exception>

<group id="ExceptionVAL-codes" name="ExceptionVALCode"><descr>
    <p>
      An integer indicating the type of error generated.
    </p>
  </descr> 

<constant id="ExceptionVAL-NO_GRAMMAR_AVAILABLE_ERR" name="NO_GRAMMAR_AVAILABLE_ERR" type="unsigned short" value="71">
    <descr>
      <p>
	If the <code>DocumentEditVAL</code> related to the node does not have any grammar
	and <code>wfValidityCheckLevel</code> is set to <code>PARTIAL</code> or <code>STRICT_VALIDITY_CHECK</code>.
      </p>
    </descr></constant>

</group>

      
    </definitions> 
  </div2> 

  <div2 id="DocumentEditing"><head>Document Editing Interfaces</head> 
    <p>This section contains "Document Editing" methods as described in the
       <code>DocumentEditVAL</code>, <code>NodeEditVAL</code>, 
       <code>ElementEditVAL</code>, and <code>CharacterEditVAL</code>
       interfaces.
    </p>

    <definitions> 
      <!--=====================================================================
      =                                                                       =
      =      DocumentEditVAL
      =                                                                       =
      ======================================================================-->
      <interface name="DocumentEditVAL" inherits="NodeEditVAL" id="VAL-Interfaces-DocumentEditVAL"> 
	<descr> 
	  <p>This interface extends the <code>NodeEditVAL</code> interface with additional methods for document editing.  An object implementing this interface must also implement the <code>Document</code> interface.</p>
	  
	</descr> 
	<attribute name="continuousValidityChecking" type="boolean" id="DocumentEditVAL-continuousValidityChecking" readonly="no"> 
	  <descr> 
	    <p>An attribute specifying whether continuous checking for the
	      validity of the document is enforced or not. 
	      Setting this to <code>true</code> will result in an exception being
	      thrown, i.e., <code>VALIDATION_ERR</code>, for documents
	      that are invalid at the time of the call.  When set to true, the 
	      implementation if free to raise the <code>VALIDATION_ERR</code>
	      exception on DOM operations that would make the document invalid with
	      respect to "partial validity."  If the document
	      is invalid, then this attribute will remain <code>false</code>.
	      This attribute is <code>false</code> by default.</p> 

	  </descr></attribute> 

        <method name="getDefinedElementTypes" id="DocumentEditVAL-getDefinedElementTypes"> 
	  <descr> 
	    <p>Returns list of all element node names belonging to the 
	       element's namespace.  Given the names, nodes can be created from
	       them; note that these are not nodes from the instance	
               document, but rather are new nodes that could be inserted in 
               the document. 
            </p>
	  </descr>
	  <parameters> 
	    <param attr="in" type="DOMString" name="namespaceURI"> 
	      <descr> 
		<p><code>namespaceURI</code> of namespace.  For DTDs,
		   this is NULL.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="NameList"> 
	    <descr> 
	      <p>List of all element node names belonging to the
		 element's namespace.
              </p>
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
        </method> 	

        <method name="validateDocument" id="VAL-Interfaces-DocumentEditVAL-validateDocument">
          <descr>
            <p>Validates the document against the grammar.
               If the document is mutated during validation, a warning
               will be issued.  In addition, the validation cannot
	       modify the document, e.g., for default attributes.
	       This method makes use of the passed-in error handler, as
	       described in <bibref ref="DOMCore"/> interface.
            </p>
          </descr>
          <parameters>
          </parameters>
          <returns type="void">
            <descr>
            </descr>
          </returns>
          <raises>
            <exception name="ExceptionVAL">
              <descr>
                <p>NO_GRAMMAR_AVAILABLE_ERR: Raised if an error occurs when
the grammar is not available for the document.</p>
              </descr>
            </exception>
          </raises>
        </method>

      </interface>   	 
      <!--=====================================================================
      =                                                                       =
      =      NodeEditVAL
      =                                                                       =
      ======================================================================-->
      <interface name="NodeEditVAL" id="VAL-Interfaces-NodeEditVAL"> 
	<descr> 
	  <p>This interface is similar to the <bibref ref="DOMCore"/> <code>Node</code> interfaces, with methods for guided document editing.</p> 
	</descr> 

        <group name="CheckTypeVAL" id="NodeEditVAL-CheckTypeVAL">
          <descr>
            <p>An integer indicating which type of validation this
	      is.  Stricter validation for certain XML dialects 
	      can be done by extending the <code>NodeEditVAL</code>
              interface adding a new <code>CheckTypeVAL</code> constant(s).</p>
          </descr>

	  <constant id="VAL-Interfaces-NodeEditVAL-WF_CHECK" name="WF_CHECK" type="unsigned short" value="1"> 
	    <descr> 
	      <p>Check for well-formedness of this node.</p> 
	    </descr></constant>

          <constant id="VAL-Interfaces-NodeEditVAL-NS_WF_CHECK" name="NS_WF_CHECK" type="unsigned short" value="2"> 
	    <descr> 
	      <p>Check for namespace well-formedness includes <code>WF_CHECK</code>.</p> 
	    </descr></constant>

          <constant id="VAL-Interfaces-NodeEditVAL-PARTIAL_VALIDATY_CHECK" name="PARTIAL_VALIDITY_CHECK" type="unsigned short" value="3"> 
	    <descr> 
	      <p>Checks for whether this node is <termref def="dt-partially-valid">partially valid</termref>. It includes
		<code>NS_WF_CHECK</code>. </p> 
	    </descr></constant>

          <constant id="VAL-Interfaces-NodeEditVAL-STRICT_VALIDATY_CHECK" name="STRICT_VALIDITY_CHECK" type="unsigned short" value="4"> 
	    <descr> 
	      <p>Checks for strict validity of the node with respect to the grammar
		which by definition includes <code>NS_WF_CHECK</code>.</p> 
	    </descr></constant>
        </group>

	<attribute name="defaultValue" type="DOMString" readonly="yes" id="NodeEditVAL-defaultValue"> 
	  <descr> 
	    <p>
              The default value specified in an attribute or an element declaration.
            </p>
	  </descr>
        </attribute> 	

	<attribute name="enumeratedValues" type="DOMStringList" readonly="yes" id="NodeEditVAL-enumeratedValues"> 
	  <descr> 
	    <p>
                A <code>DOMStringList</code> of distinct values for an attribute 
                or an element declaration.
            </p>
	  </descr>
        </attribute> 	
	
	<method name="canInsertBefore" id="VAL-Interfaces-NodeEditVAL-canInsertBefore"> 
	  <descr> 
	    <p>Determines whether the <code>Node.insertBefore</code> operation 
	      would make this document not <termref def="dt-partially-valid">partially valid</termref>
	      with respect to the grammar. </p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="newChild"> 
	      <descr> 
		<p><code>Node</code> to be inserted.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="Node" name="refChild"> 
	      <descr> 
		<p>Reference <code>Node</code>.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p> 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canRemoveChild" id="VAL-Interfaces-NodeEditVAL-canRemoveChild">	  
	  <descr> 
	    <p>Has the same arguments as <code>Node.removeChild</code>.
	    Determines whether the <code>Node.removeChild</code> operation 
	      would make this document not <termref def="dt-partially-valid">partially valid</termref>
	      with respect to the grammar. </p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="oldChild"> 
	      <descr> 
		<p><code>Node</code> to be removed.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p> 		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canReplaceChild" id="VAL-Interfaces-NodeEditVAL-canReplaceChild"> 
	  <descr> 
	    <p>Has the same arguments as <code>Node.replaceChild</code>.
	    Determines whether the <code>Node.replaceChild</code> operation 
	      would make this document not <termref def="dt-partially-valid">partially valid</termref>
	      with respect to the grammar. </p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="newChild"> 
	      <descr> 
		<p>New <code>Node</code>.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="Node" name="oldChild"> 
	      <descr> 
		<p><code>Node</code> to be replaced.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p> 		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canAppendChild" id="VAL-Interfaces-NodeEditVAL-canAppendChild">	  
	  <descr> 
	    <p>Has the same arguments as <code>Node.appendChild</code>.
	    Determines whether the <code>Node.replaceChild</code> operation 
	      would make this document not <termref def="dt-partially-valid">partially valid</termref>
	      with respect to the grammar. </p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="newChild"> 
	      <descr> 
		<p><code>Node</code> to be appended.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="isNodeValid" id="NodeEditVAL-isNodeValid"> 
	  <descr> 
	    <p>Determines if the Node is valid relative to the grammar.
	      It doesn't normalize before checking if the document
	      is valid.  To do so, one would need to explicitly call a normalize 
	      method. </p> 
	  </descr> 
	  <parameters> 
	    <param name="deep" type="boolean" attr="in"> 
	      <descr> 
		<p>Setting the <code>deep</code> flag on causes the <code>isNodeValid</code> method to check for the whole subtree of the
		  current node for validity. Setting it to <code>false</code> only checks the current node and
		  its immediate child nodes.  The <code>validateDocument</code> method on the <code>DocumentVAL</code> interface, however, checks to determine whether the entire document is valid.</p>
	      </descr> 
	    </param> 
	    <param name="wFValidityCheckLevel" type="unsigned short" attr="in">
	      <descr>
		<p>Flag to tell at what level validity and well-formedness checking is done.
		</p>
	      </descr>
	    </param>
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if the node is valid/well-formed in the grammar and check level
		defined by <code>wfValidityCheckLevel</code>, <code>false</code> if not.</p> 
	    </descr> 
	  </returns> 
	  <raises> 
	    <exception name="ExceptionVAL"> 
	      <descr> 
		<p>NO_GRAMMAR_AVAILABLE_ERR: Exception is raised if the DocumentEditVAL
		  related to this node does not have any grammar associated with it
		  and <code>wfValidityCheckLevel</code> is set
		  to <code>PARTIAL</code> or <code>STRICT_VALIDITY_CHECK</code>.</p> 
	      </descr></exception></raises> 
	</method> 

      </interface>                    
 
     <!--=====================================================================
      =                                                                       =
      =      ElementEditVAL
      =                                                                       =
      ======================================================================-->
      <interface name="ElementEditVAL" inherits="NodeEditVAL" id="VAL-Interfaces-ElementEditVAL"> 
	<descr> 
	  <p>This interface extends the <code>NodeEditVAL</code> interface with additional methods for guided document editing. An
	    object implementing this interface must also implement <code>Element</code> interface.</p> 

	</descr> 

	<attribute name="allowedChildren" type="NameList" readonly="yes" id="ElementEditVAL-allowedChildren"> 
	  <descr>
	    <p>A <code>NameList</code> of possible <code>Element</code> nodes 
               that can appear as children of this type of element.  Note that
               if no context of this element exists, then this is <code>NULL</code>;
               it is an empty list if the element is not in the document tree.
               Given the names, nodes can be created from them; note that these
               are not nodes from the instance document, but rather are 
               new nodes that could be inserted in the document.
            </p>
	  </descr>
        </attribute> 	

	<attribute name="allowedParents" type="NameList" readonly="yes" id="ElementEditVAL-allowedParents"> 
	  <descr> 
	    <p>A <code>NameList</code> of possible <code>Element</code> nodes 
               that can appear as a parent of this type of element.  Note that
               if no context of this element exists, for example, the parent
               element of this element, then this is <code>NULL</code>; it is
               an empty list if the element is not in the document tree.
               Given the names, nodes can be created from them; note that these
               are not nodes from the instance document, but rather are 
               new nodes that could be inserted in the document.
            </p>
	  </descr>
        </attribute> 	

	<attribute name="allowedNextSiblings" type="NameList" readonly="yes" id="ElementEditVAL-allowedNextSiblings"> 
	  <descr> 
	    <p>A <code>NameList</code> of possible sibling <code>Element</code> nodes 
               that can appear after this element. 
            </p>
	  </descr>
        </attribute> 	

	<attribute name="allowedPreviousSiblings" type="NameList" readonly="yes" id="ElementEditVAL-allowedPreviousSiblings"> 
	  <descr> 
	    <p>A <code>NameList</code> of possible sibling <code>Element</code> nodes 
               that can appear before this element.
            </p>
	  </descr>
        </attribute> 	

	<attribute name="allowedAttributes" type="NameList" readonly="yes" id="ElementEditVAL-allowedAttributes"> 
	  <descr> 
	    <p>A <code>NameList</code> of possible <code>Attr</code> nodes 
               that can appear with this type of element. 
               Given the names, nodes can be created from them; note that these
               are not nodes from the instance document, but rather are 
               new nodes that could be inserted in the document.
            </p>
	  </descr>
        </attribute> 	

	<attribute name="requiredAttributes" type="NameList" readonly="yes" id="ElementEditVAL-requiredAttributes"> 
	  <descr> 
	    <p>A <code>NameList</code> of required <code>Attr</code> nodes 
               that must appear with this type of element. 
               Given the names, nodes can be created from them; note that these
               are not nodes from the instance document, but rather are 
               new nodes that could be inserted in the document.
            </p>
	  </descr>
        </attribute> 	
	
        <method name="contentType" id="VAL-Interfaces-ElementEditVAL-ElementEditVAL-contentType"> 
	  <descr> 
	    <p>Determines element content type.</p> 
	  </descr> 
	  <parameters> 
	  </parameters> 
	  <returns type="unsigned short"> 
	    <descr> 
	      <p>Constant for one of <code>EMPTY_CONTENTTYPE</code> - content 
                 type of an element which has neither child elements nor 
		 character data,
		 <code>ANY_CONTENTTYPE</code> - content type of an element 
		 which can contain zero or more child elements as well as 
		 character data, <code>MIXED_CONTENTTYPE</code> - content 
		 type of an element which contains character data optionally 
 		 interspersed with child elements, <code>ELEMENTS_CONTENTTYPE</code> - content 
		 type of an element which contains only child elements 
		 optionally separated by whitespace, <code>SIMPLE_CONTENTTYPE</code> - content 
		 type of an element which contains character data with attributes.</p> 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canSetAttribute" id="VAL-Interfaces-ElementEditVAL-ElementEditVAL-canSetAttribute"> 
	  <descr> 
	    <p>Determines if the value for specified attribute can be set.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="attrname"> 
	      <descr> 
		<p>Name of attribute.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="attrval"> 
	      <descr> 
		<p>Value to be assigned to the attribute.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canSetAttributeNode" id="VAL-Interfaces-ElementEditVAL-canSetAttributeNode"> 
	  <descr> 
	    <p>Determines if an attribute node can be added with respect 
	      to the validity check level.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Attr" name="attrNode"> 
	      <descr> 
		<p><code>Node</code> in which the attribute can possibly be set.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>			  
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canSetAttributeNS" id="VAL-Interfaces-ElementEditVAL-canSetAttributeNS"> 
	  <descr> 
	    <p>Determines if the attribute with given namespace and qualified name
	      can be created if not already present in the attribute list of the element. If
	      the attribute with the same qualified name and namespaceURI is already present in the
	      element's attribute list, it tests whether the value of the attribute and its prefix can be set to 
	      the new value. See DOM core <code>setAttributeNS</code>.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="namespaceURI"> 
	      <descr> 
		<p><code>namespaceURI</code> of namespace.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="qualifiedName"> 
	      <descr> 
		<p>Qualified name of attribute.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="value"> 
	      <descr> 
		<p>Value to be assigned to the attribute.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>			 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canRemoveAttribute" id="VAL-Interfaces-ElementEditVAL-canRemoveAttribute"> 
	  <descr> 
	    <p>Verifies if an attribute by the given name can be removed.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="attrname"> 
	      <descr> 
		<p>Name of attribute.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canRemoveAttributeNS" id="VAL-Interfaces-ElementEditVAL-canRemoveAttributeNS"> 
	  <descr> 
	    <p>Verifies if an attribute by the given local name and namespace can be
	      removed.</p> 
	  </descr> 
	  <parameters> 
	    <param name="namespaceURI" type="DOMString" attr="in"> 
	      <descr> 
		<p>The namespace URI of the attribute to remove.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="localName"> 
	      <descr> 
		<p>Local name of the attribute to be removed.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr>
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		  
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="canRemoveAttributeNode" id="VAL-Interfaces-ElementEditVAL-canRemoveAttributeNode"> 
	  <descr> 
	    <p>Determines if an attribute node can be removed.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="attrNode"> 
	      <descr> 
		<p>The <code>Attr</code> node to remove from the attribute list.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="isElementDefined" id="VAL-Interfaces-ElementEditVAL-isElementDefined"> 
	  <descr> 
	    <p>Determines if <code>name</code> is defined in the grammar.</p>
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="name"> 
	      <descr> 
		<p>Name of element.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p>A boolean that is <code>true</code> if the element is defined, false
		otherwise.</p> 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

	<method name="isElementDefinedNS" id="VAL-Interfaces-ElementEditVAL-isElementDefinedNS"> 
	  <descr> 
	    <p>Determines if <code>name</code> in this namespace is defined in the
	      current context.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="namespaceURI"> 
	      <descr> 
		<p><code>namespaceURI</code> of namespace.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="name"> 
	      <descr> 
		<p>Name of element.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p>A boolean that is <code>true</code> if the element is defined, false
		otherwise.</p> 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 	
      </interface>                    

      <!--=====================================================================
      =                                                                       =
      =      CharacterDataEditVAL
      =                                                                       =
      ======================================================================-->
      <interface name="CharacterDataEditVAL" inherits="NodeEditVAL" id="VAL-Interfaces-CharacterDataEditVAL"> 
	<descr> 
	  <p>This interface extends the <code>NodeEditVAL</code> interface with additional methods for document editing. An object
	    implementing this interface must also implement <code>CharacterData</code> interface.</p> 
	</descr> 

	<attribute readonly="yes" type="boolean" name="isWhitespaceOnly" id="VAL-Interfaces-CharacterDataEditVAL-isWhitespaceOnly"> 
	  <descr> 
	    <p><code>true</code> if content only whitespace; <code>false</code> for non-whitespace.</p>
	  </descr> 
	</attribute> 

	<method name="canSetData" id="VAL-Interfaces-CharacterDataEditVAL-canSetData"> 
	  <descr> 
	    <p>Determines if data can be set.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="arg"> 
	      <descr> 
		<p>Argument to be set.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 		 
	    </descr> 
	  </returns> 
	  <raises>  
	  </raises> 
	</method> 
	<method name="canAppendData" id="VAL-Interfaces-CharacterDataEditVAL-canAppendData"> 
	  <descr> 
	    <p>Determines if data can be appended.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="DOMString" name="arg"> 
	      <descr> 
		<p>Data to be appended.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises>  
	  </raises> 
	</method> 
	<method name="canReplaceData" id="VAL-Interfaces-CharacterDataEditVAL-canReplaceData"> 
	  <descr> 
	    <p>Determines if data can be replaced.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="unsigned long" name="offset"> 
	      <descr> 
		<p>Offset.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="unsigned long" name="count"> 
	      <descr> 
		<p>Replacement.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="arg"> 
	      <descr> 
		<p>Argument to be set.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 
	<method name="canInsertData" id="VAL-Interfaces-CharacterDataEditVAL-canInsertData"> 
	  <descr> 
	    <p>Determines if data can be inserted.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="unsigned long" name="offset"> 
	      <descr> 
		<p>Offset.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="DOMString" name="arg"> 
	      <descr> 
		<p>Argument to be set.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 
	<method name="canDeleteData" id="VAL-Interfaces-CharacterDataEditVAL-canDeleteData"> 
	  <descr> 
	    <p>Determines if data can be deleted.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="unsigned long" name="offset"> 
	      <descr> 
		<p>Offset.</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="unsigned long" name="count"> 
	      <descr> 
		<p>Number of 16-bit units to delete.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr>
	      <p><code>true</code> if no reason it can't be done; <code>false</code> if it
		can't be done.</p>		  
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 
      </interface>                    
      
    </definitions> 
  </div2> 


  <div2 id="DocumentEditingforRange"><head>Range-related Document-Editing Interfaces</head> 
    <p>This section contains Range-related "Document-editing" methods.
    </p>

    <definitions> 

     <!--=====================================================================
      =                                                                       =
      =      RangeVAL
      =                                                                       =
      ======================================================================-->
      <interface name="RangeVAL" inherits="Range" id="VAL-Interfaces-RangeVAL"> 
	<descr> 
	  <p>This interface extends the <code>Range</code> interface with additional methods for guided document editing.
          </p>
	</descr> 

	<method name="canSurroundContents" id="VAL-Interfaces-RangeVAL-canSurroundContents"> 
	  <descr> 
	    <p>Determines if a passed-in node can be "surrounded" by two other nodes.  For example, this convenience method can: 1) get all children of "x", 
               2) get all possible parents of "y", and then 3) check if the passed-in 
               node "b" is present in both sets.</p> 
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="node1"> 
	      <descr> 
		<p>First node to "surround" passed-in node "b".</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="Node" name="node2"> 
	      <descr> 
		<p>Second node to "surround" passed-in node "b".</p> 
	      </descr> 
	    </param> 
	    <param attr="in" type="Node" name="b"> 
	      <descr> 
		<p>Node to be "surrounded" by.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="boolean"> 
	    <descr> 
	      <p><code>true</code> if it is; <code>false</code> if it
		is not.</p>		 
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 


	<method name="getAlternativeElements" id="VAL-Interfaces-RangeVAL-getAlternativeElements"> 
	  <descr> 
	    <p>Returns a list of names of alternative elements, given a reference child as a parameter.
            </p>
	  </descr> 
	  <parameters> 
	    <param attr="in" type="Node" name="refChild"> 
	      <descr> 
		<p>Reference child.</p> 
	      </descr> 
	    </param> 
	  </parameters> 
	  <returns type="NameList"> 
	    <descr> 
	      <p>A list of names of alternative elements.
              </p>
	    </descr> 
	  </returns> 
	  <raises> 
	  </raises> 
	</method> 

      </interface>
                    
    </definitions>
  </div2>


</div1><!--
 *************************************************************************
 * END OF VALIDATION                                                    *
 *************************************************************************
-->

</body>
  <!--
  *************************************************************************
  * BACK MATTER                                                           *
  *************************************************************************
  -->
<back> 

<div1 role="idl" id="idl">
  <head>IDL Definitions</head>

  <p>
    This appendix contains the complete OMG IDL <bibref ref="OMGIDL"/> for the
    Level 3 Document Object Model Validation definitions.
  </p>

  <p>The IDL files are also available as: <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="idl.zip" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/idl.zip</loc></p>

    <!--
    ******************************************************
    | Events OMG IDL DEFINITIONS                           |
    ******************************************************
    -->
      <?GENERATE-IDL Level-3-Validation validation dom.w3c.org dom?>
</div1>

<div1 role="java-binding" id="java-binding">
  <head>Java Language Binding</head>

  <p>This appendix contains the complete Java <bibref ref="Java"/> bindings for
  the Level 3 Document Object Model Validation.</p>

  <p>The Java files are also available as <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="java-binding.zip" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://www.w3.org/TR/2003/WD-DOM-Level-3-Val-20030205/java-binding.zip</loc></p>

    <!--
    ******************************************************
    | Events JAVA BINDINGS                                 |
    ******************************************************
    -->
      <?GENERATE-JAVA Level-3-Validation org.w3c.dom validation?>
</div1>
<div1 role="ecma-binding" id="ecma-binding">
  <head>ECMAScript Language Binding</head>

  <p>This appendix contains the complete ECMAScript <bibref ref="ECMAScript"/>
  binding for the Level 3 Document Object Model Validation definitions.</p>

    <!--
    ******************************************************
    | Events ECMA SCRIPT BINDINGS                         |
    ******************************************************
    -->
  <?GENERATE-ECMA Level-3-Validation?>
</div1>
  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<div1 role="acknowledgements" id="contributors"> 
  <head>Acknowledgements</head> 

  <p>Many people contributed to the DOM specifications (Level 1, 2 or 3),
  including members of the DOM Working Group and the DOM Interest Group. We
  especially thank the following:</p>

  <p>
    Andrew Watson (Object Management Group), Andy Heninger (IBM), Angel
    Diaz (IBM), Arnaud Le Hors (W3C and IBM), Ashok Malhotra (IBM and
    Microsoft), Ben Chang (Oracle), Bill Smith (Sun), Bill Shea (Merrill
    Lynch), Bob Sutor (IBM), Chris Lovett (Microsoft), Chris Wilson
    (Microsoft), David Brownell (Sun), David Ezell (Hewlett Packard
    Company), David Singer (IBM), Dimitris Dimitriadis (Improve AB), Don
    Park (invited), Elena Litani (IBM), Eric Vasilik (Microsoft), Gavin
    Nicol (INSO), Ian Jacobs (W3C), James Clark (invited), James
    Davidson (Sun), Jared Sorensen (Novell), Jeroen van Rotterdam
    (X-Hive Corporation), Joe Kesselman (IBM), Joe Lapp (webMethods),
    Joe Marini (Macromedia), Johnny Stenback (Netscape/AOL), Jon
    Ferraiolo (Adobe), Jonathan Marsh (Microsoft), Jonathan Robie
    (Texcel Research and Software AG), Kim Adamson-Sharpe (SoftQuad
    Software Inc.), Lauren Wood (SoftQuad Software Inc., <emph>former
    Chair</emph>), Laurence Cable (Sun), Mark Davis (IBM), Mark Scardina
    (Oracle), Martin D&#252;rst (W3C), Mary Brady (NIST), Mick Goulish
    (Software AG), Mike Champion (Arbortext and Software AG), Miles
    Sabin (Cromwell Media), Patti Lutsky (Arbortext), Paul Grosso
    (Arbortext), Peter Sharpe (SoftQuad Software Inc.), Phil Karlton
    (Netscape), Philippe Le H&#233;garet (W3C, <emph>W3C team contact
    and former Chair</emph>), Ramesh Lekshmynarayanan (Merrill Lynch),
    Ray Whitmer (iMall, Excite@Home, and Netscape/AOL,
    <emph>Chair</emph>), Rezaur Rahman (Intel), Rich Rollman
    (Microsoft), Rick Gessner (Netscape), Rick Jelliffe (invited), Rob
    Relyea (Microsoft), Scott Isaacs (Microsoft), Sharon Adler (INSO),
    Steve Byrne (JavaSoft), Tim Bray (invited), Tim Yu (Oracle), Tom
    Pixley (Netscape/AOL), Vidur Apparao (Netscape), Vinod Anupam
    (Lucent).
  </p>

  <p>
    Thanks to all those who have helped to improve this specification by
    sending suggestions and corrections (Please, keep bugging us with your
    issues!).
  </p>

  <div2 id="Productions"><head>Production Systems</head> 
    <p>
      This specification was written in XML. The HTML, OMG IDL, Java and
      ECMAScript bindings were all produced automatically.
    </p>

    <p>
      Thanks to Joe English, author of <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.flightlab.com/cost" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">cost</loc>, which was used as the
      basis for producing DOM Level 1. Thanks also to Gavin Nicol, who wrote
      the scripts which run on top of cost. Arnaud Le Hors and Philippe Le
      H&#233;garet maintained the scripts.
    </p>

    <p>
      After DOM Level 1, we used <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://xml.apache.org/xerces-j" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Xerces</loc> as the basis DOM
      implementation and wish to thank the authors. Philippe Le H&#233;garet
      and Arnaud Le Hors wrote the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://dev.w3.org/cvsweb/java/classes/org/w3c/tools/specgenerator/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Java
      programs</loc> which are the DOM application.
    </p>

    <p>
      Thanks also to Jan K&#228;rrman, author of <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.tdb.uu.se/~jan/html2ps.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">html2ps</loc>, which we use
      in creating the PostScript version of the specification.
    </p>

  </div2>
</div1>

  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<!--
 *************************************************************************
 * BEGINNING OF DOM GLOSSARY                                             *
 *************************************************************************
-->
<div1 role="glossary" id="glossary">
  <head>Glossary</head>
  <orglist role="editors">
    <member>
      <name>Arnaud Le Hors</name>
      <affiliation>W3C</affiliation>
    </member>
    <member>
      <name>Robert S. Sutor</name>
      <affiliation>IBM Research (for DOM Level 1)</affiliation>
    </member>
  </orglist>
  <p>Several of the following term definitions have been borrowed or
    modified from similar definitions in other W3C or standards documents.
    See the links within the definitions for more information.</p>
  <glist>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-16-bit-unit">16-bit unit</label>
      <def><p>The base unit of a <code>DOMString</code>. This indicates that
          indexing on a <code>DOMString</code> occurs in units of 16 bits. 
          This must not be misunderstood to mean that a <code>DOMString</code>
          can store arbitrary 16-bit units. A <code>DOMString</code> is a 
          character string encoded in UTF-16; this means that the restrictions
          of UTF-16 as well as the other relevant restrictions on character strings
          must be maintained. A single character, for example in the form of a 
          numeric character reference, may correspond to one or two 16-bit units.</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-ancestor">ancestor</label>
      <def><p>An <term>ancestor</term> node of any node A is any node
	  above A in a tree model, where "above" means "toward the root."
	</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-API">API</label>
      <def><p>An <term>API</term> is an Application Programming
	  Interface, a set of functions or methods used to access some
	  functionality.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-bubbling-phase">bubbling phase</label>
      <def>
	<p>
	  The process by which an <termref def="dt-event">event</termref> can be handled by one of the
	  target ancestors after being handled by the <termref def="dt-target-node">target node</termref>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-capture-phase">capture phase</label>
      <def>
	<p>
	  The process by which an <termref def="dt-event">event</termref> can be handled by one of the
	  target ancestors before being handled by the <termref def="dt-target-node">target node</termref>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-child">child</label>
      <def><p>A <term>child</term> is an immediate descendant node of
	  a node.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-application">client application</label>
      <def><p>A [client] application is any software that uses the
	  Document Object Model programming interfaces provided by the
	  hosting implementation to accomplish useful work. Some
	  examples of client applications are scripts within an HTML
	  or XML document.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-COM">COM</label>
      <def><p><term>COM</term> is Microsoft's Component Object Model <bibref role="informative" ref="COM"/>, a technology for building applications from binary
	    software components.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-content-model">content model</label>
      <def><p>The <term>content model</term> is a simple grammar
	  governing the allowed types of the child elements and the
	  order in which they appear. See <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2000/REC-xml-20001006#sec-element-content" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Element Content</xspecref>
	  in XML <bibref role="informative" ref="XML"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-context">context</label>
      <def><p>A <term>context</term> specifies an access pattern (or
	  path): a set of interfaces which give you a way to interact
	  with a model. For example, imagine a model with different
	  colored arcs connecting data nodes. A context might be a
	  sheet of colored acetate that is placed over the model
	  allowing you a partial view of the total information in the
	  model.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-convenience">convenience</label>
      <def><p>A <term>convenience method</term> is an operation on an
          object that could be accomplished by a program consisting of
          more basic operations on the object. Convenience methods are
          usually provided to make the API easier and simpler to use or to
	  allow specific programs to create more optimized implementations
	  for common operations. A similar definition holds for a
	  <term>convenience property</term>.
        </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-cooked">cooked model</label>
      <def><p>A model for a document that represents the document
	  after it has been manipulated in some way. For example, any
	  combination of any of the following transformations would
	  create a cooked model:
	  <olist>
	    <item><p>Expansion of internal text entities.</p></item>
	    <item><p>Expansion of external entities.</p></item>
	    <item><p>Model augmentation with style-specified generated
		text.</p></item>
	    <item><p>Execution of style-specified
		reordering.</p></item>
	    <item><p>Execution of scripts.</p></item>
	  </olist> A browser might only be able to provide access to a
	  cooked model, while an editor might provide access to a
	  cooked or the initial structure model (also known as the
	  <term>uncooked model</term>) for a document. </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-CORBA">CORBA</label>
      <def><p><term>CORBA</term> is the <term>Common Object Request Broker
	    Architecture</term> from the <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.omg.org" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">OMG</loc> <bibref role="informative" ref="CORBA"/>. This architecture is a collection of objects and
	    libraries that allow the creation of applications containing
	    objects that make and receive requests and responses in a
	    distributed environment.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-cursor">cursor</label>
      <def><p>A <term>cursor</term>is an object representation of a
	  node. It may possess information about context and the path
	  traversed to reach the node.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-datamodel">data model</label>
      <def><p>A <term>data model</term> is a collection of descriptions of data
	  structures and their contained fields, together with the operations
	  or functions that manipulate them.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-deprecation">deprecation</label>
      <def><p>When new releases of specifications are released, some older
	  features may be marked as being <term>deprecated</term>. This
	  means that new work should not use the features and that
	  although they are supported in the current release, they may
	  not be supported or available in future releases.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-descendant">descendant</label>
      <def><p>A <term>descendant</term> node of any node A is any node
	  below A in a tree model, where "below" means "away from the
	  root."</p></def>
    </gitem>

    <!-- ................................................................ -->
    <gitem>
      <label id="dt-document-element">document element</label>
      <def>
	<p>
	  There is only one document element in a <code>Document</code>. This
	  element node is a child of the <code>Document</code> node. See
	  <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2000/REC-xml-20001006#dt-root" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Well-Formed XML
	  Documents</xspecref> in XML <bibref role="informative" ref="XML"/>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-document-order">document order</label>

      <def><p>There is an ordering, <term>document order</term>, defined on all
      the nodes in the document corresponding to the order in which the first
      character of the XML representation of each node occurs in the XML
      representation of the document after expansion of general entities. Thus,
      the <termref def="dt-document-element">document element</termref> node
      will be the first node. Element nodes occur before their children. Thus,
      document order orders element nodes in order of the occurrence of their
      start-tag in the XML (after expansion of entities). The attribute nodes
      of an element occur after the element and before its children. The
      relative order of attribute nodes is implementation-dependent.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-DOM-Level-0">DOM Level 0</label>
      <def><p>The term "DOM Level 0" refers to a mix (not formally specified)
	  of HTML document functionalities offered by Netscape Navigator
	  version 3.0 and Microsoft Internet Explorer version 3.0. In some
	  cases, attributes or methods have been included for reasons of
	  backward compatibility with "DOM Level 0".</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-ECMAScript">ECMAScript</label>
      <def><p>The programming language defined by the ECMA-262 standard
	  <bibref role="informative" ref="ECMAScript"/>. As stated in the standard, the
            originating technology for ECMAScript was JavaScript <bibref role="informative" ref="JavaScript"/>. Note that in the ECMAScript binding, the word
              "property" is used in the same sense as the IDL term
              "attribute."</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-element">element</label>
      <def><p>Each document contains one or more elements, the
	  boundaries of which are either delimited by start-tags and
	  end-tags, or, for empty elements by an empty-element tag.
	  Each element has a type, identified by name, and may have a
	  set of attributes. Each attribute has a name and a value.
	  See <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2000/REC-xml-20001006#sec-logical-struct" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Logical
	    Structures</xspecref> in XML <bibref role="informative" ref="XML"/>.
	</p></def>
    </gitem>
    <gitem>
      <label id="dt-event">event</label>
      <def>
	<p>
	  An event is the representation of some asynchronous occurrence
	  (such as a mouse click on the presentation of the element, or
	  the removal of child node from an element, or any of
	  unthinkably many other possibilities) that gets associated
	  with an <termref def="dt-event-target">event target</termref>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-event-target">event target</label>
      <def>
	<p>
	  The object to which an <termref def="dt-event">event</termref>
	  is targeted.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-equivalence">equivalence</label>
      <def>
	<p>Two nodes are <term>equivalent</term> if they have the same node
	  type and same node name. Also, if the nodes contain data, that must
	  be the same. Finally, if the nodes have attributes then collection
	  of attribute names must be the same and the attributes corresponding
	  by name must be equivalent as nodes.</p>

        <p>Two nodes are <term>deeply equivalent</term> if they are
	  <term>equivalent</term>, the child node lists are equivalent are
	  equivalent as <code>NodeList</code> objects, and the pairs of
	  equivalent attributes must in fact be deeply equivalent.</p>


        <p>Two <code>NodeList</code> objects are <term>equivalent</term> if they
	  have the same length,	and the nodes corresponding by index
	  are deeply equivalent. </p>

        <p>Two <code>NamedNodeMap</code> objects are <term>equivalent</term> if
	  they have the same length, they have same collection of names,
	  and the nodes corresponding by name in the maps are deeply
	  equivalent. </p>

        <p>Two <code>DocumentType</code> nodes are <term>equivalent</term> if
	  they are equivalent as nodes, have the same names, and have
	  equivalent entities and attributes <code>NamedNodeMap</code>
	  objects.</p>

      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-infoitem">information item</label>
      <def><p>An information item is an abstract representation of some
          component of an XML document. See the <bibref role="informative" ref="InfoSet"/>
            for details.
        </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-logically-adjacent-text-nodes">logically-adjacent text nodes</label>
      <def><p>
        <term>Logically-adjacent text nodes</term> are <code>Text</code> or
        <code>CDataSection</code> nodes that may be visited sequentially in
        <termref def="dt-document-order">document order</termref> without
        entering, exiting, or passing over <code>Element</code>,
        <code>Comment</code>, or <code>ProcessingInstruction</code> nodes.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-implementation">hosting implementation</label>
      <def><p>A [hosting] implementation is a software module that
	  provides an implementation of the DOM interfaces so that a
	  client application can use them. Some examples of hosting
	  implementations are browsers, editors and document
	  repositories.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-HTML">HTML</label>
      <def><p>The HyperText Markup Language (<term>HTML</term>) is a
	  simple markup language used to create hypertext documents
	  that are portable from one platform to another. HTML
	  documents are SGML documents with generic semantics that are
	  appropriate for representing information from a wide range
	  of applications. <bibref role="informative" ref="HTML40"/></p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-IDL">IDL</label>
      <def><p>An Interface Definition Language (<term>IDL</term>) is used to
	  define the interfaces for accessing and operating upon
	  objects. Examples of IDLs are the Object Management Group's IDL
	  <bibref role="informative" ref="CORBA"/>, Microsoft's IDL <bibref role="informative" ref="MSIDL"/>, and
	      Sun's Java IDL <bibref role="informative" ref="JavaIDL"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-implementor">implementor</label>
      <def><p>Companies, organizations, and individuals that claim to
	  support the Document Object Model as an API for their
	  products.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-inheritance">inheritance</label>
      <def><p>In object-oriented programming, the ability to create new
	  classes (or interfaces) that contain all the methods and properties
	  of another class (or interface), plus additional methods and
	  properties. If class (or interface) D inherits from class (or
	  interface) B, then D is said to be <term>derived</term> from B. B is
	  said to be a <term>base</term> class (or interface) for D. Some
	  programming languages allow for multiple inheritance, that is,
	  inheritance from more than one class or interface.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-raw-struct">initial structure model</label>
      <def><p>Also known as the <term>raw structure model</term> or
	  the <term>uncooked model</term>, this represents the
	  document before it has been modified by entity expansions,
	  generated text, style-specified reordering, or the execution
	  of scripts. In some implementations, this might correspond
	  to the "initial parse tree" for the document, if
	  it ever exists. Note that a given implementation might not
	  be able to provide access to the initial structure model for
	  a document, though an editor probably would.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-interface">interface</label>
      <def><p>An <term>interface</term> is a declaration of a set of
          methods with no information given about their implementation.
	  In object systems that support interfaces and inheritance,
	  interfaces can usually inherit from one another.
        </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-lang-binding">language binding</label>
      <def><p>A programming <term>language binding</term> for an IDL
	  specification is an implementation of the interfaces in the
	  specification for the given language. For example, a Java
	  language binding for the Document Object Model IDL
	  specification would implement the concrete Java classes that
	  provide the functionality exposed by the
	  interfaces.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-live">live</label>
      <def>
          <p>An object is <term>live</term> if any change to the underlying
          document structure is reflected in the object.</p></def>      
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-localname">local name</label>
      <def><p>A <term>local name</term> is the local part of a <term>qualified
	    name</term>.
	  This is called the <xtermref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/1999/REC-xml-names-19990114/#dt-localname" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">local
	    part</xtermref> in Namespaces in XML <bibref role="informative" ref="Namespaces"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-method">method</label>
      <def><p>A <term>method</term> is an operation or function that is
	  associated with an object and is allowed to manipulate the
	  object's data.
        </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-model">model</label>
      <def><p>A <term>model</term> is the actual data representation
	  for the information at hand. Examples are the structural
	  model and the style model representing the parse structure
	  and the style information associated with a document. The
	  model might be a tree, or a directed graph, or something
	  else.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-namespaceprefix">namespace prefix</label>
      <def><p>A <term>namespace prefix</term> is a string that associates
	  an element or attribute name with a <term>namespace URI</term> in
	  XML. See <xtermref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/1999/REC-xml-names-19990114/#dt-prefix" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">namespace
	    prefix</xtermref> in Namespaces in XML <bibref role="informative" ref="Namespaces"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-namespaceURI">namespace URI</label>
      <def><p>A <term>namespace URI</term> is a URI that identifies
	  an XML namespace. This is called the <xtermref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/1999/REC-xml-names-19990114/#dt-NSName" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">namespace name</xtermref> in
	  Namespaces in XML <bibref role="informative" ref="Namespaces"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-namespace-well-formed">namespace well-formed</label>
      <def>
	<p>
	  A node is a <term>namespace well-formed</term> XML node if it
	  is a <termref def="dt-well-formed">well-formed</termref>
	  node, and follow the productions and namespace constraints defined
	  <bibref ref="Namespaces"/>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-object-model">object model</label>
      <def><p>An <term>object model</term>
	  is a collection of
	  descriptions of classes or interfaces,
	  together with their member data, member functions,
	  and class-static operations.
	</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-parent">parent</label>
      <def><p>A <term>parent</term> is an immediate ancestor node of a
	  node.</p></def>
    </gitem>
    <gitem>
      <label id="dt-partially-valid">partially valid</label>
      <def>
	<p>A node in a DOM tree is <term>partially valid</term> if it is
	<termref def="dt-well-formed">well formed</termref> (this part is for
	comments and processing instructions) and its immediate children are
	those expected by the content model. The node may be missing trailing
	required children yet still be considered <term>partially
	valid</term>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-qualifiedname">qualified name</label>
      <def><p>A <term>qualified name</term> is the name of an element or
	  attribute defined as the concatenation of a <term>local name</term>
	  (as defined in this specification), optionally preceded by a
	  <term>namespace prefix</term> and colon character. See <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/1999/REC-xml-names-19990114/#ns-qualnames" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Qualified Names</xspecref> in
	  Namespaces in XML <bibref role="informative" ref="Namespaces"/>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem> 
      <label id="dt-readonly-node">read only node</label>
      <def><p>A <term>read only node</term> is a node that is immutable. This
          means its list of children, its content, and its attributes, when it
          is an element, cannot be changed in any way. However, a read only node
          can possibly be moved, when it is not itself contained in a read only
          node.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-root-node">root node</label>
      <def>
	<p>The <term>root node</term> is a node that is not a child of any
	other node. All other nodes are children or other descendants of the
	root node.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-sibling">sibling</label>
      <def><p>Two nodes are <term>siblings</term> if they have the
	  same parent node.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-string-compare">string comparison</label>
      <def><p>When string matching is required, it is to occur as
	  though the comparison was between 2 sequences of code points
	  from <bibref role="informative" ref="Unicode"/>.</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-tag-valid">tag valid document</label>
      <def><p>A document is <term>tag valid</term> if all begin and
	  end tags are properly balanced and nested.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-target-node">target node</label>
      <def>
	<p>
	  The target node is the node representing the <termref def="dt-event-target">event target</termref> to which an <termref def="dt-event">event</termref> is targeted using the DOM event
	  flow defined in <bibref ref="DOMEvents"/>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-target-phase">target phase</label>
      <def>
	<p>
	  The process by which an <termref def="dt-event">event</termref> can be handled by the <termref def="dt-event-target">event target</termref>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem><label id="dt-token">token</label><def>
        <p>An information item such as an
          <xtermref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/REC-xml.html#NT-Name" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Name</xtermref> which has been
          <termref def="dt-tokenized">tokenized</termref>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem><label id="dt-tokenized">tokenized</label><def>
        <p>The description given to various information items (for example,
          attribute values of various types, but not including the StringType
          CDATA) after having been processed by the XML processor. The process
          includes stripping leading and trailing white space, and replacing
          multiple space characters by one. See the definition of
          <xtermref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/REC-xml.html#NT-TokenizedType" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">tokenized type</xtermref>.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-type-valid">type valid document</label>
      <def><p>A document is <term>type valid</term> if it conforms to
	  an explicit DTD.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-uncooked">uncooked model</label>
      <def><p>See initial structure model.</p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-well-formed">well-formed</label>
      <def>
	<p>
	  A node is a <term>well-formed</term> XML node if it matches
	  its respective production in <bibref ref="XML"/>, meets all
	  well-formedness constraints related to the production, if
	  the entities which are referenced within the node are also
	  well-formed. See also the definition for <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2000/REC-xml-20001006#dt-wellformed" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">well-formed</xspecref> XML
	  documents in <bibref ref="XML"/>.
	</p>
      </def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-XML">XML</label>
      <def><p>Extensible Markup Language (<term>XML</term>) is an
	  extremely simple dialect of SGML which is completely
	  described in this document. The goal is to enable generic
	  SGML to be served, received, and processed on the Web in the
	  way that is now possible with HTML. XML has been designed
	  for ease of implementation and for interoperability with
	  both SGML and HTML. <bibref role="informative" ref="XML"/></p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-XML-name">XML name</label>
      <def><p>See <xspecref xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/2000/REC-xml-20001006#NT-Name" xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML name</xspecref> in
	  the XML specification (<bibref role="informative" ref="XML"/>).
        </p></def>
    </gitem>
    <!-- ................................................................ -->
    <gitem>
      <label id="dt-XML-namespace">XML namespace</label>
      <def><p>An <term>XML namespace</term> is a collection of names,
	  identified by a URI reference <bibref role="informative" ref="URIRef"/>, which are used
	    in XML documents as element types and attribute names. <bibref role="informative" ref="Namespaces"/></p></def>
    </gitem>
    <!-- ................................................................ -->
  </glist>
</div1>
<!--
 *************************************************************************
 * END OF DOM GLOSSARY                                                   *
 *************************************************************************
-->
 
  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<!--
 *************************************************************************
 * BEGINNING OF REFERENCES                                               *
 *************************************************************************
-->
<div1 role="references" id="References">
  <head>References</head>
  <p>
    For the latest version of any W3C specification please consult the list of
    <loc xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">W3C Technical Reports</loc> available at
    http://www.w3.org/TR.
  </p>
  
    <blist>      
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="c14n" href="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" key="Canonical XML" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Canonical XML Version 1.0</titleref>, J. Boyer,
	Editor. World Wide Web Consortium, 15 March 2001. This version
	of the Canonical XML Recommendation is
	http://www.w3.org/TR/2001/REC-xml-c14n-20010315. The <loc href="http://www.w3.org/TR/xml-c14n" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of Canonical
	XML</loc> is available at http://www.w3.org/TR/xml-c14n.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Charmod" key="CharModel" href="http://www.w3.org/TR/2002/WD-charmod-20020430" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Character Model for the World Wide Web 1.0</titleref>,
	M. D&#168;rst, et al., Editors. World Wide Web
	Consortium, April 2002.  This version of the Character Model
	for the World Wide Web Specification is http://www.w3.org/TR/2002/WD-charmod-20020430. The <loc href="http://www.w3.org/TR/charmod" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of Character
	Model</loc> is available at http://www.w3.org/TR/charmod.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="COM" key="COM" href="http://www.microsoft.com/com/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Microsoft Component Object Model</titleref>,
        Microsoft Corporation. Available at http://www.microsoft.com/com.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="CORBA" key="CORBA" href="http://www.omg.org/technology/documents/formal/corba_2.htm" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Common Object Request Broker: Architecture and
	Specification, version 2</titleref>. Object Management
	Group. The latest version of CORBA version  2.0 is available at
        http://www.omg.org/technology/documents/formal/corba_2.htm.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="CSS2" key="CSS2" href="http://www.w3.org/TR/1998/REC-CSS2-19980512" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Cascading Style Sheets, level 2
	Specification</titleref>, B. Bos, H. Wium Lie, C.
	Lilley, and I. Jacobs, Editors. World Wide Web Consortium, 12
	May 1998. This version of the Cascading Style Sheets
	Recommendation is http://www.w3.org/TR/1998/REC-CSS2-19980512. The <loc href="http://www.w3.org/TR/REC-CSS2" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of Cascading
	Style Sheets</loc> is available at
	http://www.w3.org/TR/REC-CSS2.
    </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM-Level-1" key="DOM Level 1" href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">DOM Level 1 Specification</titleref>, V. Apparao,
	et al., Editors. World Wide Web Consortium, 1 October 1998. This
	version of the DOM Level 1 Recommendation is http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001. The
	<loc href="http://www.w3.org/TR/REC-DOM-Level-1/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version
	of DOM Level 1</loc> is available at
	http://www.w3.org/TR/REC-DOM-Level-1.
      </bibl>
<!--
      <bibl id='DOMASLS' key='DOM Level 3 Abstract Schemas and Load and	Save'
           href='&as-ls.latest.url;'>
        <titleref>Document Object Model Level 3 Abstract Schemas and
        Load and Save Specification</titleref>, B. Chang, J.
        Stenback, J. van Rotterdam, A. Heninger, J. Kesselman,
        R. Rahman, Editors. World Wide Web Consortium, January 2002.
        This version of the DOM Level 3 Abstract Schemas and Load and
        Save Specification is &as-ls.latest.url;. The <loc
        href='http://www.w3.org/TR/DOM-Level-3-ASLS'>latest version of
        DOM Level 3 Abstract Schemas and Load and Save</loc> is
        available at http://www.w3.org/TR/DOM-Level-3-ASLS.
      </bibl>
-->
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMAS" key="DOM Level 3 Abstract Schemas" href="http://www.w3.org/TR/DOM-Level-3-AS" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 Abstract Schemas
        Specification</titleref>, B. Chang, E. Litani, J. Kesselman,
        R. Rahman, Editors. World Wide Web Consortium, June 2002.  This
        version of the DOM Level 3 Abstract Schemas Specification is
        http://www.w3.org/TR/DOM-Level-3-AS. The <loc href="http://www.w3.org/TR/DOM-Level-3-AS" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
        DOM Level 3 Abstract Schemas</loc> is
        available at http://www.w3.org/TR/DOM-Level-3-AS.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2Core" key="DOM Level 2 Core" href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 Core
	Specification</titleref>, A. Le Hors, et al., Editors. World
	Wide Web Consortium, 13 November 2000. This version of the DOM
	Level 2 Core Recommendation is http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113. The <loc href="http://www.w3.org/TR/DOM-Level-2-Core" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
	DOM Level 2 Core</loc> is available at
	http://www.w3.org/TR/DOM-Level-2-Core.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMCore" key="DOM Level 3 Core" href="http://www.w3.org/TR/2002/WD-DOM-Level-3-Core-20021022" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 Core
        Specification</titleref>, A. Le Hors, et al., Editors. World
        Wide Web Consortium, October 2002. This version of the Document
        Object Model Level 3 Core Specification is
        http://www.w3.org/TR/2002/WD-DOM-Level-3-Core-20021022. The <loc href="http://www.w3.org/TR/DOM-Level-3-Core" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
        DOM Level 3 Core</loc> is available at
        http://www.w3.org/TR/DOM-Level-3-Core.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2Events" key="DOM Level 2 Events" href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
 	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 Events
 	Specification</titleref>, T. Pixley, Editor. World Wide Web
 	Consortium, 13 November 2000. This version of the Document
 	Object Model Level 2 Events Recommendation is http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113.  The
 	<loc href="http://www.w3.org/TR/DOM-Level-2-Events" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest
 	version of Document Object Model Level 2 Events</loc> is
 	available at http://www.w3.org/TR/DOM-Level-2-Events.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMEvents" key="DOM Level 3 Events" href="http://www.w3.org/TR/DOM-Level-3-Events" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 Events
	Specification</titleref>, P. Le H&#233;garet, T. Pixley,
	Editors.  World Wide Web Consortium, July 2002. This version of
	the Document Object Model Level 3 Events Specification is
	http://www.w3.org/TR/DOM-Level-3-Events.  The <loc href="http://www.w3.org/TR/DOM-Level-3-Events" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
	Document Object Model Level 3 Events</loc> is available at
	http://www.w3.org/TR/DOM-Level-3-Events.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMLS" key="DOM Level 3 Load and Save" href="http://www.w3.org/TR/DOM-Level-3-LS" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 Load and Save
        Specification</titleref>, J.  Stenback, A. Heninger,
        Editors. World Wide Web Consortium, July 2002.  This version of
        the DOM Level 3 Load and Save Specification is
        http://www.w3.org/TR/DOM-Level-3-LS. The <loc href="http://www.w3.org/TR/DOM-Level-3-LS" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of DOM
        Level 3 Load and Save</loc> is available at
        http://www.w3.org/TR/DOM-Level-3-LS.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2HTML" key="DOM Level 2 HTML" href="http://www.w3.org/TR/2001/WD-DOM-Level-2-HTML-20011210" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 HTML
        Specification</titleref>, J. Stenback, et al., Editors. World
        Wide Web Consortium, October 2002. This version of the Document
        Object Model Level 2 HTML Specification is http://www.w3.org/TR/2001/WD-DOM-Level-2-HTML-20011210.  The <loc href="http://www.w3.org/TR/DOM-Level-2-HTML" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
        Document Object Model Level 2 HTML</loc> is available at
        http://www.w3.org/TR/DOM-Level-2-HTML.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM-Level-3-Requirements" key="DOM Level 3 Requirements" href="http://www.w3.org/TR/2001/WD-DOM-Requirements-20010419/#Level3" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">    
       <quote>DOM Requirements for DOM Level 3</quote> in <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">DOM
       Requirements for DOM Level 3</titleref>, B. Chang, et al.,
       Editors.  World Wide Web Consortium, April 2001. This version of
       the DOM Requirements for DOM Level 3 is
       http://www.w3.org/TR/2001/WD-DOM-Requirements-20010419/#Level3.
       The <loc href="http://www.w3.org/TR/DOM-Requirements" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest
       version of DOM Requirements</loc> is available at
       http://www.w3.org/TR/DOM-Requirements.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2Style" key="DOM Level 2 Style Sheets and CSS" href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
       <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 Style Sheets and CSS
       Specification</titleref>, C. Wilson, P. Le H&#233;garet,
       V. Apparao, Editors.  World Wide Web Consortium, 13 November
       2000. This version of the Document Object Model Level 2 Style
       Sheets and CSS Recommendation is http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113.  The <loc href="http://www.w3.org/TR/DOM-Level-2-Style" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
       Document Object Model Level 2 Style Sheets and CSS</loc> is
       available at http://www.w3.org/TR/DOM-Level-2-Style.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2Traversal-Range" key="DOM Level 2 Traversal and      Range" href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 Traversal and Range
	Specification</titleref>, J. Kesselman, J. Robie, M.
	Champion, P. Sharpe, V. Apparao, L. Wood,
	Editors. World Wide Web Consortium, 13 November 2000. This
	version of the Document Object Model Level 2 Traversal and Range
	Recommendation is http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113.  The <loc href="http://www.w3.org/TR/DOM-Level-2-Traversal-Range" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest
	version of Document Object Model Level 2 Traversal and
	Range</loc> is available at
	http://www.w3.org/TR/DOM-Level-2-Traversal-Range.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMVal" key="DOM Level 3 Validation" href="http://www.w3.org/TR/DOM-Level-3-Val" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 Validation
        Specification</titleref>, B. Chang, J. Kesselman, R. Rahman,
        Editors. World Wide Web Consortium, October 2002.  This version of
        the DOM Level 3 Validation Specification is
        http://www.w3.org/TR/DOM-Level-3-Val. The <loc href="http://www.w3.org/TR/DOM-Level-3-Val" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
        DOM Level 3 Validation</loc> is available at
        http://www.w3.org/TR/DOM-Level-3-Val.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOM2Views" key="DOM Level 2 Views" href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 2 Views
	Specification</titleref>, A. Le Hors, L. Cable, Editors.  World Wide Web
	Consortium, 13 November 2000. This version of the Document Object
	Model Level 2 Views Recommendation is http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113.  The <loc href="http://www.w3.org/TR/DOM-Level-2-Views" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of Document Object Model Level 2
	Views</loc> is available at http://www.w3.org/TR/DOM-Level-2-Views.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DOMXPath" key="DOM Level 3 XPath" href="http://www.w3.org/TR/DOM-Level-3-XPath/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Document Object Model Level 3 XPath
	Specification</titleref>, R. Whitmer, Editor. World Wide Web
	Consortium, March 2002. This version of the Document Object
	Model Level 3 XPath Specification is http://www.w3.org/TR/DOM-Level-3-XPath.  The
	<loc href="http://www.w3.org/TR/DOM-Level-3-XPath/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest
	version of Document Object Model Level 3 XPath</loc> is
	available at http://www.w3.org/TR/DOM-Level-3-XPath.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="DWW95" key="DWW95" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Developing International Software for Windows 95 and
	Windows NT: A Handbook for International Software
	Design</titleref>, N. Kano, Author. Microsoft Press, 1995. ISBN
	1-55615-840-8.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="ECMAScript" key="ECMAScript" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">ECMAScript Language Specification</titleref>, Third
	Edition. European Computer Manufacturers Association, December
	1999. This version of the ECMAScript Language is available from
	http://www.ecma.ch/.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="HTML40" key="HTML 4.01" href="http://www.w3.org/TR/1998/REC-html40-19980424/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">HTML 4.01 Specification</titleref>, D. Raggett, A. Le
        Hors, and I. Jacobs, Editors. World Wide Web Consortium, 17
        December 1997, revised 24 April 1998, revised 24 December
        1999. This version of the HTML 4.01 Recommendation is
        http://www.w3.org/TR/1998/REC-html40-19980424. The <loc href="http://www.w3.org/TR/html4" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of HTML 4</loc> is
        available at http://www.w3.org/TR/html4.
      </bibl>      
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="ISO10646" key="ISO/IEC 10646" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">ISO/IEC 10646-1993 (E). Information technology -
        Universal Multiple-Octet Coded Character Set (UCS) - Part
        1: Architecture and Basic Multilingual Plane.</titleref>
        [Geneva]: International Organization for Standardization, 1993
        (plus amendments AM 1 through AM 7).
      </bibl>     
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Java" key="Java" href="http://java.sun.com/docs/books/jls" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Java Language Specification</titleref>, J.
	Gosling, B. Joy, and G. Steele, Authors. Addison-Wesley,
	September 1996. Available at http://java.sun.com/docs/books/jls
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="JavaIDL" key="Java IDL" href="http://java.sun.com/products/jdk/1.2/docs/guide/idl" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Java IDL</titleref>. Sun Microsystems. Available at http://java.sun.com/products/jdk/1.2/docs/guide/idl
      </bibl>      
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="JavaScript" key="JavaScript" href="http://developer.netscape.com/tech/javascript/resources.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">JavaScript Resources</titleref>. Netscape
	Communications Corporation. Available at http://developer.netscape.com/tech/javascript/resources.html
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="JAXP" key="JAXP" href="http://java.sun.com/xml/xml_jaxp.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Java API for XML Processing (JAXP)</titleref>. Sun
	Microsystems. Available at
	http://java.sun.com/xml/xml_jaxp.html.
	</bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="JScript" key="JScript" href="http://msdn.microsoft.com/scripting/default.htm" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">JScript Resources</titleref>. Microsoft. Available at
	http://msdn.microsoft.com/scripting/default.htm
      </bibl>    
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="KeyEvent" key="KeyEvent for Java" href="http://java.sun.com/j2se/1.4.1/docs/api/java/awt/event/KeyEvent.html" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Java 2 SDK, Standard Edition Documentation, Version
	1.4.1, Class java.awt.events.KeyEvent</titleref>. Sun
	Microsystems. Available at
	http://java.sun.com/j2se/1.4.1/docs/api/java/awt/event/KeyEvent.html.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Keys" key="Keys enumeration for .Net" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWindowsFormsKeysClassTopic.asp" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">.NET Framework Class Library, Keys
	Enumeration</titleref>. Microsoft. Available at
	http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWindowsFormsKeysClassTopic.asp.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="MathML2" key="MathML 2.0" href="http://www.w3.org/TR/2001/REC-MathML2-20010221" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Mathematical Markup Language (MathML) Version
	2.0</titleref>, D. Carlisle, P. Ion, R. Miner, N. Poppelier,
	Editors. World Wide Web Consortium, 21 February 2001. This version
	of the Math 2.0 Recommendation is http://www.w3.org/TR/2001/REC-MathML2-20010221. The <loc href="http://www.w3.org/TR/MathML2" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of MathML
	2.0</loc> is available at http://www.w3.org/TR/MathML2.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="MSIDL" key="MIDL" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/midl/midl/midl_language_reference.asp" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">MIDL Language
        Reference</titleref>. Microsoft. Available at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/midl/midl/midl_language_reference.asp.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="OMGIDL" key="OMG IDL" href="http://www.omg.org/technology/documents/formal/corba_2.htm" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <quote>OMG IDL Syntax and Semantics</quote> defined in
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Common Object Request Broker: Architecture and
        Specification, version 2</titleref>, Object Management
        Group. The latest version of CORBA version 2.0 is available at
        http://www.omg.org/technology/documents/formal/corba_2.htm.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="URIRef" key="IETF RFC 2396" href="http://www.ietf.org/rfc/rfc2396.txt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Uniform Resource Identifiers (URI): Generic Syntax</titleref>, T. Berners-Lee,
	R. Fielding, L. Masinter, Authors. Internet Engineering Task Force, August 1998. Available at
	http://www.ietf.org/rfc/rfc2396.txt.
      </bibl>      
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="RFC2616" key="IETF RFC 2616" href="http://www.ietf.org/rfc/rfc2616.txt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Hypertext Transfer Protocol -- HTTP/1.1</titleref>,
	R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter,
	P. Leach, T. Berners-Lee, Authors. Internet Engineering Task
	Force, June 1999. Available at
	http://www.ietf.org/rfc/rfc2616.txt.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="RFC3023" key="IETF RFC 3023" href="http://www.ietf.org/rfc/rfc3023.txt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Media Types</titleref>, M. Murata, S. St.Laurent,
	D. Kohn, Editors. Internet Engineering Task Force, January
	2001. Available at http://www.ietf.org/rfc/rfc3023.txt.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="SAX" key="SAX" href="http://www.saxproject.org/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Simple API for XML</titleref>, D. Megginson and
        D. Brownell, Maintainers. Available at
        http://www.saxproject.org/
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="SVG1" key="SVG 1.0" href="http://www.w3.org/TR/2001/REC-SVG-20010904" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Scalable Vector Graphics (SVG) 1.0
	Specification</titleref>, J. Ferraiolo, Editor. World Wide Web
	Consortium, 4 September 2001. This version of the SVG 1.0
	Recommendation is http://www.w3.org/TR/2001/REC-SVG-20010904. The <loc href="http://www.w3.org/TR/SVG" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of SVG 1.0</loc>
	is available at http://www.w3.org/TR/SVG.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Unicode" key="Unicode 2.0" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Unicode Standard, Version 2.0.</titleref>. The
	Unicode Consortium, 1996. Reading, Mass.: Addison-Wesley
	Developers Press. ISBN 0-201-48345-9.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Unicode30" key="Unicode 3.0" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">The Unicode Standard, Version 3.0.</titleref>. The
	Unicode Consortium, 2000. Reading, Mass.: Addison-Wesley
	Developers Press. ISBN 0-201-61633-5.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XHTML10" key="XHTML 1.0" href="xhtml10;" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XHTML 1.0: The Extensible HyperText Markup
        Language</titleref>, S. Pemberton, et al., Authors. World Wide
        Web Consortium, 26 January 2000, revised 1 August 2002. This
        version of the XHTML 1.0 Recommendation is http://www.w3.org/TR/2002/REC-xhtml1-20020801. The <loc href="http://www.w3.org/TR/xhtml1" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XHTML
        1.0</loc> is available at http://www.w3.org/TR/xhtml10.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XHTML11" key="XHTML 1.1" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	W3C (World Wide Web Consortium) <loc href="http://www.w3.org/TR/2001/REC-xhtml11-20010531" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">XHTML 1.1 -
	  Module-base XHTML</loc>, May 2001. Available at http://www.w3.org/TR/2001/REC-xhtml11-20010531
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XPath20DataModel" key="XQuery 1.0 and XPath 2.0 Data Model" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	W3C (World Wide Web Consortium) <loc href="http://www.w3.org/TR/query-datamodel/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">XQuery
	1.0 and XML Path 2.0 Data Model</loc>, June 2001. Available at
	http://www.w3.org/TR/query-datamodel
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XML" key="XML 1.0" href="http://www.w3.org/TR/2000/REC-xml-20001006" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Extensible Markup Language (XML) 1.0 (Second
	Edition)</titleref>, T. Bray, J. Paoli,
	C. M. Sperberg-McQueen, and E. Maler, Editors. World Wide Web
	Consortium, 10 February 1998, revised 6 October 2000. This
	version of the XML 1.0 Recommendation is http://www.w3.org/TR/2000/REC-xml-20001006. The <loc href="http://www.w3.org/TR/REC-xml" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	1.0</loc> is available at http://www.w3.org/TR/REC-xml.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XML11" key="XML 1.1" href="http://www.w3.org/TR/2002/CR-xml11-20021015/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML 1.1</titleref>, J. Cowan, Editor. World Wide Web
	Consortium, 15 October 2002. This version of the XML 1.1
	Specification is http://www.w3.org/TR/2002/CR-xml11-20021015. The <loc href="http://www.w3.org/TR/xml11/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	1.1</loc> is available at http://www.w3.org/TR/xml11.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XMLBase" key="XML Base" href="http://www.w3.org/TR/2001/REC-xmlbase-20010627/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Base</titleref>, J. Marsh, Editor. World
	Wide Web Consortium, June 2001.  This version of the XML Base
	Recommendation is http://www.w3.org/TR/2001/REC-xmlbase-20010627. The <loc href="http://www.w3.org/TR/xmlbase/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	Base</loc> is available at http://www.w3.org/TR/xmlbase.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="InfoSet" key="XML Information set" href="http://www.w3.org/TR/2001/REC-xml-infoset-20011024/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
        <titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Information Set</titleref>, J. Cowan and R.
        Tobin, Editors. World Wide Web Consortium, 24 October 2001.
        This version of the XML Information Set Recommendation is
        http://www.w3.org/TR/2001/REC-xml-infoset-20011024. The <loc href="http://www.w3.org/TR/xml-infoset/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
        Information Set</loc> is available at
        http://www.w3.org/TR/xml-infoset.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XMLEvents" key="XML Events" href="http://www.w3.org/TR/2001/WD-xml-events-20011026/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Events</titleref>, S. McCarron, S. Pemberton,
	and T.V. Raman, Editors. World Wide Web Consortium, October
	2001. This version of the XML Events specification is
	http://www.w3.org/TR/2001/WD-xml-events-20011026. The <loc href="http://www.w3.org/TR/xml-events/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	Events</loc> is available at http://www.w3.org/TR/xml-events.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="Namespaces" key="XML Namespaces" href="http://www.w3.org/TR/1999/REC-xml-names-19990114/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">Namespaces in XML</titleref>, T. Bray, D.
	Hollander, and A. Layman, Editors. World Wide Web
	Consortium, 14 January 1999. This version of the XML
	Information Set Recommendation is http://www.w3.org/TR/1999/REC-xml-names-19990114. The <loc href="http://www.w3.org/TR/REC-xml-names/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
	Namespaces in XML</loc> is available at
	http://www.w3.org/TR/REC-xml-names.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XMLSchema0" key="XML Schema Part 0" href="http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Schema Part 0: Primer</titleref>, D. Fallside,
	Editor. World Wide Web Consortium, 2 May 2001.  This version of
	the XML Part 0 Recommendation is http://www.w3.org/TR/2001/REC-xmlschema-0-20010502. The
	<loc href="http://www.w3.org/TR/xmlschema-0/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
	XML Schema Part 0</loc> is available at
	http://www.w3.org/TR/xmlschema-0.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XMLSchema1" key="XML Schema Part 1" href="http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Schema Part 1: Structures</titleref>, H. Thompson,
	D. Beech, M. Maloney, and N. Mendelsohn, Editors. World Wide Web
	Consortium, 2 May 2001. This version of the XML Part 1
	Recommendation is http://www.w3.org/TR/2001/REC-xmlschema-1-20010502. The <loc href="http://www.w3.org/TR/xmlschema-1/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	Schema Part 1</loc> is available at
	http://www.w3.org/TR/xmlschema-1.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XMLSchema2" key="XML Schema Part 2" href="http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Schema Part 2: Datatypes</titleref>, P. Byron and
	Ashok Malhotra, Editors. World Wide Web Consortium, 2 May 2001.
	This version of the XML Part 2 Recommendation is
	http://www.w3.org/TR/2001/REC-xmlschema-2-20010502. The <loc href="http://www.w3.org/TR/xmlschema-2/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XML
	Schema Part 2</loc> is available at
	http://www.w3.org/TR/xmlschema-2.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XML-StyleSheet" key="XML StyleSheet" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	W3C (World Wide Web Consortium) <loc href="http://www.w3.org/1999/06/REC-xml-stylesheet-19990629" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Associating Style Sheets with XML
	documents Version 1.0</loc>, June 1999. Available at
	http://www.w3.org/1999/06/REC-xml-stylesheet-19990629
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XPath10" href="http://www.w3.org/TR/1999/REC-xpath-19991116/" key="XPath 1.0" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XML Path Language (XPath) Version 1.0</titleref>,
	J. Clark and S. DeRose, Editors. World Wide Web
	Consortium, 16 November 1999. This version of the XPath 1.0
	Recommendation is http://www.w3.org/TR/1999/REC-xpath-19991116. The <loc href="http://www.w3.org/TR/xpath/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of XPath
	1.0</loc> is available at http://www.w3.org/TR/xpath.
      </bibl>
      <bibl xmlns:xlink="http://www.w3.org/1999/xlink" id="XPointer" key="XPointer" href="http://www.w3.org/TR/2002/WD-xptr-xpointer-20020710/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">
	<titleref xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">XPointer xpointer() Scheme</titleref>, S. DeRose,
	E. Maler, and R. Daniel Jr., Editors. World Wide Web Consortium,
	July 2002.  This version of the XPointer xpointer() Scheme
	Specification is http://www.w3.org/TR/2002/WD-xptr-xpointer-20020710. The <loc href="http://www.w3.org/TR/xptr-xpointer/" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">latest version of
	XPointer xpointer() Scheme</loc> is available at
	http://www.w3.org/TR/xptr-xpointer.
      </bibl>
    </blist>

</div1>
<!--
 *************************************************************************
 * END OF REFERENCES                                                     *
 *************************************************************************
-->

  
<!-- $Id: xml-source.xml,v 1.4 2003/02/05 21:22:55 plehegar Exp $ -->
<!--
 *************************************************************************
 * BEGINNING OF DOM INDEX                                                * 
 *************************************************************************
-->
<div1 role="index" id="Index">
  <head>Index</head>
  <?GENERATE-DEFINITION-INDEX?>
</div1>
<!--
 *************************************************************************
 * END OF DOM INDEX                                                      *
 *************************************************************************
-->
 
</back> </spec>