<?xml version='1.0' encoding='UTF-8'?>
<?metadataRepository version='1.1.0'?>
<repository name='Exported Repository' type='org.eclipse.equinox.internal.p2.metadata.repository.LocalMetadataRepository' version='1'>
  <properties size='2'>
    <property name='p2.timestamp' value='1296135944336'/>
    <property name='p2.compressed' value='true'/>
  </properties>
  <units size='3'>
    <unit id='org.eclipse.rap.target.test' version='1.0.0.201101271445' singleton='false'>
      <update id='org.eclipse.rap.target.test' range='[0.0.0,1.0.0.201101271445)' severity='0'/>
      <properties size='1'>
        <property name='org.eclipse.equinox.p2.name' value='Test'/>
      </properties>
      <provides size='3'>
        <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.rap.target.test' version='1.0.0.201101271445'/>
        <provided namespace='osgi.bundle' name='org.eclipse.rap.target.test' version='1.0.0.201101271445'/>
        <provided namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' version='1.0.0'/>
      </provides>
      <artifacts size='1'>
        <artifact classifier='osgi.bundle' id='org.eclipse.rap.target.test' version='1.0.0.201101271445'/>
      </artifacts>
      <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
      <touchpointData size='1'>
        <instructions size='1'>
          <instruction key='manifest'>
            Bundle-SymbolicName: org.eclipse.rap.target.test&#xA;Bundle-Version: 1.0.0.201101271445
          </instruction>
        </instructions>
      </touchpointData>
    </unit>
    <unit id='org.eclipse.rap.target.test.feature.feature.jar' version='1.0.0.201101271445'>
      <properties size='3'>
        <property name='org.eclipse.equinox.p2.name' value='Feature'/>
        <property name='org.eclipse.equinox.p2.description' value='[Enter Feature Description here.]'/>
        <property name='org.eclipse.equinox.p2.description.url' value='http://www.example.com/description'/>
      </properties>
      <provides size='3'>
        <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.rap.target.test.feature.feature.jar' version='1.0.0.201101271445'/>
        <provided namespace='org.eclipse.equinox.p2.eclipse.type' name='feature' version='1.0.0'/>
        <provided namespace='org.eclipse.update.feature' name='org.eclipse.rap.target.test.feature' version='1.0.0.201101271445'/>
      </provides>
      <filter>
        (org.eclipse.update.install.features=true)
      </filter>
      <artifacts size='1'>
        <artifact classifier='org.eclipse.update.feature' id='org.eclipse.rap.target.test.feature' version='1.0.0.201101271445'/>
      </artifacts>
      <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
      <touchpointData size='1'>
        <instructions size='1'>
          <instruction key='zipped'>
            true
          </instruction>
        </instructions>
      </touchpointData>
      <licenses size='1'>
        <license uri='http://www.example.com/license' url='http://www.example.com/license'>
          [Enter License Description here.]
        </license>
      </licenses>
      <copyright uri='http://www.example.com/copyright' url='http://www.example.com/copyright'>
        [Enter Copyright Description here.]
      </copyright>
    </unit>
    <unit id='org.eclipse.rap.target.test.feature.feature.group' version='1.0.0.201101271445' singleton='false'>
      <update id='org.eclipse.rap.target.test.feature.feature.group' range='[0.0.0,1.0.0.201101271445)' severity='0'/>
      <properties size='4'>
        <property name='org.eclipse.equinox.p2.name' value='Feature'/>
        <property name='org.eclipse.equinox.p2.description' value='[Enter Feature Description here.]'/>
        <property name='org.eclipse.equinox.p2.description.url' value='http://www.example.com/description'/>
        <property name='org.eclipse.equinox.p2.type.group' value='true'/>
      </properties>
      <provides size='1'>
        <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.rap.target.test.feature.feature.group' version='1.0.0.201101271445'/>
      </provides>
      <requires size='2'>
        <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.rap.target.test' range='[1.0.0.201101271445,1.0.0.201101271445]'/>
        <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.rap.target.test.feature.feature.jar' range='[1.0.0.201101271445,1.0.0.201101271445]'>
          <filter>
            (org.eclipse.update.install.features=true)
          </filter>
        </required>
      </requires>
      <touchpoint id='null' version='0.0.0'/>
      <licenses size='1'>
        <license uri='http://www.example.com/license' url='http://www.example.com/license'>
          [Enter License Description here.]
        </license>
      </licenses>
      <copyright uri='http://www.example.com/copyright' url='http://www.example.com/copyright'>
        [Enter Copyright Description here.]
      </copyright>
    </unit>
  </units>
</repository>
