<?xml version="1.0" encoding="UTF-8"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
   distributed with this work for additional information
   regarding copyright ownership.  The ASF licenses this file
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, either express or implied.  See the License for the
   specific language governing permissions and limitations
   under the License.    
-->
<classpath>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-core.jar">
		<attributes>
			<attribute value="file:/C:/Program Files/apache-uima/docs/api" name="javadoc_location"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-document-annotation.jar">
		<attributes>
			<attribute value="file:/C:/Program Files/apache-uima/docs/api" name="javadoc_location"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-cpe.jar">
		<attributes>
			<attribute value="file:/C:/Program Files/apache-uima/docs/api" name="javadoc_location"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-tools.jar">
		<attributes>
			<attribute value="file:/C:/Program Files/apache-uima/docs/api" name="javadoc_location"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-adapter-vinci.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/lib/uima-adapter-soap.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/lib/jVinci.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/lib/uimaj-as-core.jar"/>
		<attributes>
			<attribute value="file:/C:/Program Files/apache-uima/docs/api" name="javadoc_location"/>
		</attributes>
	<classpathentry kind="var" path="UIMA_HOME/lib/uimaj-as-activemq.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/lib/uimaj-as-jms.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/apache-activemq-4.1.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/activemq-optional-4.1.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/commons-httpclient-2.0.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/xstream-1.2.2.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/xmlpull-1.1.3.4d_b4_min.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/jetty-6.0.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/jetty-util-6.0.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/servlet-api-2.5-6.0.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/commons-logging-1.1.1.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/commons-pool-1.2.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/optional/spring-2.0.6.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/geronimo-jms_1.1_spec-1.0.jar"/>
	<classpathentry kind="var" path="UIMA_HOME/apache-activemq-4.1.1/lib/geronimo-j2ee-management_1.0_spec-1.0.jar"/>
	<classpathentry kind="lib" path="resources"/>
	<classpathentry kind="output" path="bin"/>
</classpath>


