<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- saved from url=(0047)http://www.eclipse.org/legal/epl/longabout.html -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

<TITLE>About</TITLE>
</HEAD><BODY lang="EN-US">
<H2>About This Content</H2>
 
<P>&lt;<EM>insert current release date here, e.g., June 5, 2007</EM>&gt;</P>	
<H3>License</H3>

<P>The Eclipse Foundation makes available all content in this plug-in ("Content").  Unless otherwise 
indicated below, the Content is provided to you under the terms and conditions of the
Eclipse Public License Version 1.0 ("EPL").  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, "Program" 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 ("Redistributor") 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 when built using Maven downloads 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>
		
		<h4>
			<a href="about_files/apache-v20.txt">Apache License 2.0</a>
		</h4>
		This product contains software developed by the Apache Software Foundation (<a href="http://www.apache.org">http://www.apache.org</a>).
		<ul>
			<li>
				Apache Commons DBCP 1.2.2 - binary and source is available from the <a href="http://commons.apache.org/dbcp/">Apache Commons DBCP project</a>
			</li>
			<li>
				Apache Commons Pool 1.3.0 - binary and source is available from the <a href="http://commons.apache.org/pool/">Apache Commons Pool project</a>
			</li>
			<li>
				Apache log4j 1.2.15 - binary and source is available from the <a href="http://logging.apache.org/log4j/">Apache log4j project</a>
			</li>
		</ul>
		<h4>
			<a href="about_files/cddl-10.txt">Common Development and Distribution License 1.0</a>
		</h4>
		<ul>
			<li>
				javax.persistence 1.0.0 - <a href="http://www.springsource.com/repository/app/bundle/version/download?name=com.springsource.javax.persistence&version=1.0.0&type=binary">binary</a> and <a href="http://www.springsource.com/repository/app/bundle/version/download?name=com.springsource.javax.persistence&version=1.0.0&type=source">source</a> is available from the SpringSource <a href="http://www.springsource.com/repository/app/">Enterprise Bundle Repository</a>
			</li>
		</ul>
		<h4>
			<a href="epl-v10.html">Eclipse Public License 1.0</a>
		</h4>
		<ul>
			<li>
				H2 1.0.71 - binary and source is available from the
				<a href="http://www.h2database.com">H2 project</a> (Dual-licensed EPL or modified Mozilla Public License 1.1. Virgo elects to use EPL.)
			</li>
		</ul>
		<h4>
			<a href="about_files/FreeMarker-License.html">Freemarker License</a>
		</h4>
		<ul>
			<li>
				FreeMarker 2.3.15 - binary and source is available from the
				<a href="http://freemarker.sourceforge.net/">FreeMarker project</a>
			</li>
		</ul>

</BODY></HTML>