<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
    <title>W3C IPR SOFTWARE NOTICE</title>
<style type="text/css">
<!--
html, body { background: #fff; color: #000; } /* body for Windows IE3 */
-->
</style>
  </head>
  <body>
    <h1>
      W3C SOFTWARE NOTICE AND LICENSE
    </h1>
    <h3>
      Copyright &copy; 2004 <a href="http://www.w3.org/">World Wide Web
      Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
      Institute of Technology</a>, <a
      href="http://www.ercim.org/">European Research Consortium for
      Informatics and Mathematics</a>, <a
      href="http://www.keio.ac.jp/">Keio University</a>). All Rights
      Reserved.
    </h3>
    <p>
      The DOM bindings are published under the W3C Software Copyright Notice
      and License. The software license requires "Notice of any changes or
      modifications to the W3C files, including the date changes were made."
      Consequently, modified versions of the DOM bindings must document that
      they do not conform to the W3C standard; in the case of the IDL
      definitions, the pragma prefix can no longer be 'w3c.org'; in the case of
      the Java language binding, the package names can no longer be in the
      'org.w3c' package.
    </p>
    <p>
      <b>Note:</b> The original version of the W3C Software Copyright Notice
      and License could be found at <a
      href='http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231'>http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231</a>
    </p>
    <p>
      This work (and included software, documentation such as READMEs,
      or other related items) is being provided by the copyright holders
      under the following license. By obtaining, using and/or copying
      this work, you (the licensee) agree that you have read,
      understood, and will comply with the following terms and
      conditions.
    </p>

    <p>
      Permission to copy, modify, and distribute this software and its
      documentation, with or without modification,&nbsp;for any purpose
      and without fee or royalty is hereby granted, provided that you
      include the following on ALL copies of the software and
      documentation or portions thereof, including modifications:
    </p>
    <ol>
      <li>The full text of this NOTICE in a location viewable to users
      of the redistributed or derivative work.</li>

      <li>Any pre-existing intellectual property disclaimers, notices,
      or terms and conditions. If none exist, the <a
      href="http://www.w3.org/Consortium/Legal/2002/copyright-software-short-notice-20021231.html">W3C
      Software Short Notice</a> should be included (hypertext is
      preferred, text is permitted) within the body of any redistributed
      or derivative code.</li>
      
      <li>Notice of any changes or modifications to the files, including
      the date changes were made. (We recommend you provide URIs to the
      location from which the code is derived.)</li>
    </ol>

    <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>
  </body>
</html>
