<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>

<head>
<title>About</title>
<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
</head>

<BODY lang="EN-US">

<H3>About This Content</H3>

<P>June, 2008</P>

<h3>License</h3>

<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
indicated below, the Content is provided to you under the terms and conditions of the
Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>

<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
apply to your use of any object code in the Content.  Check the Redistributor's license that was 
provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
indicated below, the terms and conditions of the EPL still apply to any source code in the Content
and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>

		
<h3>Third Party Content</h3>
<p>The Content includes items that have been sourced from third parties as set out below. If you 
did not receive this Content directly from the Eclipse Foundation, the following is provided 
for informational purposes only, and you should look to the Redistributor's license for 
terms and conditions of use.</p>
<p>
<strong>XSLT and XInclude Schema</strong> <br/><br/>

The following XML Schema in the plug-in are based on W3C code available on the World Wide Web Consortium website
and shall be defined as the "W3C-Derived Work":<br/><br/>

xslt-schemas/xslt-1.0.xsd (derived from <a href="http://www.w3.org/XML/2000/04schema-hacking/xslt.xsd">W3C XSLT 1.0 Schema</a>)<br/>
xslt-schemas/xslt-2.0.xsd (derived from <a href="http://www.w3.org/2005/02/schema-for-xslt20.xsd">W3C XSLT 2.0 Schema</a>)<br/>
xslt-schemas/xinclude.xsd (copied from <a href="http://www.w3.org/TR/xinclude/">XInclude Schema</a>)<br/><br/>

Your use of the W3C-Derived Work is subject to the terms and conditions of the W3C Software License.<br/> 
A copy of the license is contained in the file <a href="about_files/W3CSoftwareLicense.html">W3CSoftwareLicense.html</a> and is 
also available 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>

</BODY>
</HTML>
