<ip_log version ="1.0">
  <project id="org.apache.xerces" version="2.8.0" status="done">
    <info>
      <name>Apache Xerces</name>
      <origin>Apache</origin>
      <reference>http://xerces.apache.org</reference>
      <repository>/cvsroot/tools</repository>
      <location>org.eclipse.orbit/org.apache.xerces</location>
      <tag>v2_8_0</tag>
    </info>
    <contact>
      <name>Joe Smith</name>
      <email>joe@exmample.com</email>
      <company>Example Company</company>
    </contact>
    <notes>
      <note>We use this bundle for parsing XML.</note>
    </notes>
    <legal>
      <ipzilla bug_id="103"/>
      <license>
        <name>Apache License Version 2.0</name>
        <reference>http://apache.org/licenses/LICENSE-2.0</reference>
      </license>
      <package>xerces-apis.jar</package>
    </legal>
    <legal>
      <ipzilla bug_id="1234"/>
      <license>
        <name>Apache License Version 2.1</name>
        <reference>http://apache.org/licenses/LICENSE-2.1</reference>
      </license>
      <package>xerces-impl.jar</package>
    </legal>
  </project>
  <project id="org.apache.xerces" version="2.8.1" status="done">
    <info>
      <name>Apache Xerces</name>
      <origin>Apache</origin>
      <reference>http://xerces.apache.org</reference>
      <repository>/cvsroot/tools</repository>
      <location>org.eclipse.orbit/org.apache.xerces</location>
      <tag>v2_8_1</tag>
    </info>
    <contact>
      <name>Joe Smith</name>
      <email>joe@exmample.com</email>
      <company>Example Company</company>
    </contact>
    <notes>
      <note>We use this bundle for parsing XML.</note>
    </notes>
    <legal>
      <ipzilla bug_id="1031"/>
      <license>
        <name>Apache License Version 2.0</name>
        <reference>http://apache.org/licenses/LICENSE-2.0</reference>
      </license>
      <package>xerces-apis.jar</package>
    </legal>
    <legal>
      <ipzilla bug_id="12341"/>
      <license>
        <name>Apache License Version 2.1</name>
        <reference>http://apache.org/licenses/LICENSE-2.1</reference>
      </license>
      <package>xerces-impl.jar</package>
    </legal>
  </project>
</ip_log>
