<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<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>January 27, 2009</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-v20.html">http://www.eclipse.org/legal/epl-v20.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>

<h4>LALR Parser Generator v1.1</h4>

<p>The plug-in is based on the software developed by the 
<a href="http://sourceforge.net/projects/lpg" target="_blank">LPG Project</a> (&quot;LPG&quot;) at SourceForge.net.</p>

<p>The content in the org.eclipse.ocl.internal.parser package (&quot;OCL Parser&quot;) includes grammar definitions derived from
LPG and code generated by LPG from these grammar files.</p>

<p>Your use of the OCL Parser and LPG is governed by the terms and conditions of the EPL.</p>

<p>The OCL Parser binary code can be found in the plug-in JAR in the org/eclipse/ocl/internal/parser directory.</p>

<p>The OCL Parser source code can be found in the src.zip in the org/eclipse/ocl/internal/parser directory.</p>

<p>The LPG binary code can be found in the net.sourceforge.lpg.lpgjavaruntime 1.1.0 plug-in JAR.</p>

<p>The LPG source code can be found in the src.zip in the net.sourceforge.lpg.lpgjavaruntime.source 1.1.0 plug-in folder.</p>
</body>
</html>